avrdude writing entire flash even if program is small

Hello everyone, please excuse possibly silly question. I am new to arduino, just started yesterday, although have experience with other platforms.

Flashing ATMEGA328P-PU bootloader and noticed avrdude always flashes entire 32k although the bootloader is only few hundred bytes. Is there any option that would prevent it from that ?

Using 5.11 version that comes with current distribution of Arduino.

I can answer my own question - after digging in avrdude sources, this is how it is written. It does not optimize writing. Bootloader will always take long with avrdude.