On 25 Mar 2004, at 01:14, Chris Nolan wrote:


An ad in one of the Linux magazines I leaf through on occassion showed some pretty noticable improvements (in the order of 20% in some cases), but I'm betting that these were crafted test cases, as we all know that MySQL's two "main" storage engines are extremely smart when it comes to using discs.

Some of our computational codes are twice the speed when they're compiled with icc compared to gcc. It can make that much difference. It's significant enough that we compile everything with icc when possible. However, there are some caveats. Some of the optimisation options available are extremely aggressive, and can break your code in all sorts of wonderful and subtle ways if you're not careful - pointer aliasing being a prime example, and we have found at least one bug in the optimiser (which Intel are working on, since we have a support contract with them).


My rule of thumb is, if the code is largely compute-bound, compile it with icc if possible. Otherwise, stick with gcc. If you're IO-bound or memory-bound, choice of compiler doesn't really matter. I've compared perl scripts on perl built with icc 7.1 and gcc 3.2, and the performance difference was negligible.

I wouldn't bust a gut over this, if I were you. I suspect MySQL is not CPU-bound, most of the time, and certainly not floating-point bound (which is where icc really shines)

Tim

--
Dr Tim Cutts
Informatics Systems Group
Wellcome Trust Sanger Institute
Hinxton, Cambridge, CB10 1SA, UK


-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to