Hi, I'm not sure how it works, but does FPC compiler optimizations for the amd64 (x86_64) CPU's get shared across various OSes?
eg: I've read various reviews that FreeBSD benchmarks often perform better than the same benchmarks run on Linux. It was even shown that FreeBSD runs Linux executable faster than Linux can. I can quote the websites if really need. So while setting up my automated unit tests for tiOPF across my various systems I compared the test results and timings. NOTE: My host OS is FreeBSD 9.1 (64-bit) using a Intel i7-3770K @ 3.5Ghz with 16GB RAM. FreeBSD boot OS is on a 128GB OCZ Vertex 4 SSD. The rest of the system runs off a 3x 2TB ZFS in RAID-z1 setup (similar to RAID5). All other OS's run in VirtualBox VM sessions. I have a single Firebird 2.5 DB server running natively under FreeBSD. All file access tests run on each OS's native file system. The Linux VM session I have is Ubuntu 10.04.4 (64-bit). Both OS's run FPC 2.6.0 and the exact same revision of tiOPF, FPTest and fpGUI. fpGUI is used for the GUI test runner of FPTest. Here is the summary of the unit test results, and the times it took in minutes and seconds. No of tests | Type of Tests | Linux | FreeBSD -------------+-----------------+------------+---------------- 151 | CSV persistence | 0:22 | 0:27 -------------+-----------------+------------+---------------- 151 | TAB persistence | 0:22 | 0:27 -------------+-----------------+------------+---------------- 151 | XMLLight | 0:23 | 0:26 -------------+-----------------+------------+---------------- 151 | SqlDB-Firebird | 3:14 | 3:38 -------------+-----------------+------------+---------------- 682 | Non-Persistent | 1:09 | 1:30 -------------+-----------------+------------+---------------- As you can see, consistently the FreeBSD tests take longer than the Linux ones. The test project on each platform was compiled with exactly the same compiler settings. Also the Non-Persistent tests is 99% in-memory tests (no disk access). So this eliminates the idea that the file systems might cause the speed difference, though the SqlDB tests used the same DB server, and there was still a large difference in speed. So this got me wondering. Does FPC compiler optimizations differ between FreeBSD and Linux, even for the same CPU type? If so, then the results is probably understandable, because there are more Linux developers and testers in the Free Pascal project, than for FreeBSD. Thus more working going into Linux optimization than for FreeBSD. If my assumption about FPC optimization is incorrect, then I'm lost for ideas why my FreeBSD setup is so much slower than a Linux VM session (and contrary to other benchmarks on the net). [sorry for the long winded email] Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel