sketch gets slow when burning atmega328 witout bootlader!!!!

sketch gets slow when burning atmega328 witout bootlader ,i m using usbasp for uploading code witout bootloader every thing is ok but when i run the code its speed gets vary slow i dont know why and also get WARNING:

Avrdude: warning: cannot set sck period. please check for usbasp firmware update.

is this warning is problem ???

You need to burn bootloader once evening not using it in order to set the fuses, which in turn determine the clock source. By default it uses the internal oscillator at 1mhz, whereas most arduino boards use a 16mhz crystal. Since.youre building sketches for 16mhz but the chip.is running at 1, all time-keeeping will be off by a factory 16

is any way to do set 16 mhz without using bootloader?????

SANDIE:
Avrdude: warning: cannot set sck period. please check for usbasp firmware update.

is this warning is problem ???

No, please ignore it. The stock firmware on your USBasp will work fine. That won't cause any problems and trying to update the firmware may cause you problems. It's best not to worry about it unless you really feel like trying out a non-standard firmware but even then you should wait until you have all the other worked out and a backup USBasp or two on hand.

SANDIE:
is any way to do set 16 mhz without using bootloader?????

Yes, but it's more work and more complicated. You would simply use AVRDUDE from the command line to set the fuses however you want. I'd rather just do Tools > Burn Bootloader to set the fuses even if I'm just going to immediately overwrite the bootloader doing Sketch > Upload Using Programmer.

BUT my sketch is running on internal crystal if i upload using without bootloader this i the problem ???do

SANDIE:
BUT my sketch is running on internal crystal if i upload using without bootloader this i the problem ???do

Sorry, it's not clear to me what you're trying to say. Please explain more thoroughly.

The default settings are for the chip to run at 1MHz (8MHz internal clock + divide-by-8 fuses.)
If your chip is running 8x too slow (1MHz instead of 8MHz), you need to change the divide-by-8 fuse.
If your chip is running 2x too slow (8MHz instead of 16MHz external crystal), you need to make sure you're using a board setting for an 8MHz chip.
If you're running 16x too slow (1MHz instead of 16MHz), you need to do both.

"Burn bootloader" is one way to set the fuses appropriately (or almost appropriately.) Even if you immediately erase and don't use the bootloader.

Other ways to set the fuses include using avrdude from a command line, or Atmel Studio, or one of the GUI front-ends to avrdude.

after working lot whole night i just solved this, what i did is just set the fuses and then wrote the code without bootloader and every thing is just running fine......... thanks to be with me all u guys