for Insert multiple rows in one single insert MySQL
The elapsed time, not the CPU time is more interesting.
You are measuring the client time, not the server time.
There are many factors on the server that get 'bad' for large chunks: buffers, undo log, replication delays, etc.
The parse time is the main overhead (on the server) for short chunks.
You have not specified the row size; this has some impact on the client, network, and server.
What connection between client and server?  Socket?  LAN?  WAN?  What is the latency between them?  On a WAN, the network delays would overwhelm perhaps all other considerations.
`key_buffer_size applies only to MyISAM; I hope you are not using that Engine.
Were there any indexes on the table?  If so, what?  If, for example, the PRIMARY KEY were a UUID, there could have a huge impact.  Also, UNIQUE keys need to check for duplicates.  (Again, this is a server task.)


My experiments show that chunks of 100-1000 rows is close to optimal in many cases.  (This happens to somewhat agree with your findings, but that is coincidental, since I looked at different timings.)