At the end of this analysis, it is clear that a major performance improvement can be obtained by correctly sizing innodb_buffer_pool_size: going from the default value (8 MB) to a reasonable one (2 GB) increase database performance by as much as 10 times. On dedicated servers, mysql documentation recommend to set this value to ~80% of available memory, while on shared server you had to use 80% (or less) of mysqld maximum allowed memory.
Also pay attention to query cache settings: while on these benchmarks enabling it has no good effects, in specific circumstances it can led to significant performance gains.
Speaking about write speed, if you can tolerate an one-second data loss in the event of complete system crash / failure, you can set trx_commit to 2. In this manner you will be able to squeeze noticeably better write performance, at the cost of losing ACID compliance (in essence: in exchange of lower reliability).
I hope that this reading was interesting for you. If you wish, you can write me to
Have a nice day!