[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[swarm-hackers] Speed differences: Linux vs. Windows

From: Steve Railsback
Subject: [swarm-hackers] Speed differences: Linux vs. Windows
Date: Fri, 22 Aug 2008 09:19:10 -0700
User-agent: Thunderbird (Windows/20080708)

Now that Marcus and Steve Jackson helped me get Fedora 9 going, I did some test runs to compare execution speed of Objective-C Swarm on the same machine, Window/Cygwin/gcc 3.3.3/Swarm 2.2 vs. Linux/gcc 4.3/Swarm from CVS.

Before I post these results, do you informed people have anything to say about how much of the differences can be attributed to the 64-bit compiler vs. differences in Swarm code vs. other differences?
Do you think my final conclusion is reasonable?

(In the past, I found negligible speed difference between 32-bit Linux and Cygwin.)


The test codes I used are:

Test 1: Version 1 of "StupidModel" (Railsback, S. F., S. L. Lytinen, and S. K. Jackson. 2006. Agent-based simulation platforms: review and development recommendations. Simulation 82:609-623. See: http://www.swarm.org/index.php/Software_templates). This code has very simple agents, very few method calls, and graphics.

Test 2: Version 16 of StupidModel, which has spatial objects and agents that interact with the space, so there are more method calls; relatively simple behavior; and graphics.

Test 3: Version 16 of StupidModel without graphics.

Test 4: A very complex ecological model (Railsback, S. F., B. C. Harvey, J. W. Hayse, and K. E. LaGory. 2005. Tests of theory for diel variation in salmonid feeding activity and habitat use. Ecology 86:947-959), in batch mode (no graphics).

Results are the execution time in Linux as a percent of the Windows execution time:

Test 1: 60%
Test 2: 60%
Test 3: 40%
Test 4: 70%

(In other words, test models 1 and 2 used 40% less time in Linux than in Windows.)

The biggest difference is Test 3, which has relative few calculations but many method calls, and no graphics. This indicates that 64-bit computing may help most by speeding up the Objective-C runtime that handles method calls.

Steve Railsback
Lang, Railsback & Associates
Arcata, California

reply via email to

[Prev in Thread] Current Thread [Next in Thread]