SIMION is a native Windows program, but it runs well under Linux via Wine on Intel x86-compatible processors. Wine generally allows programs to run at native speeds on Intel x86 compatible processors; it is not a CPU emulator but rather a Linux implementation of the Windows API. SIMION 8.0 and 8.1 have been officially tested successfully by SIS under the latest Linux/Wine, all functions should work well, and this combination is supported. SIMION 7 also runs well under Linux/Wine.
If your CPU is not Intel x86 compatible (e.g. Sun Sparc), then you’ll likely have much less luck since an emulator would be required, which is undesirable on a heavy number crunching application like SIMION. Native builds of SIMION for these platforms are not normally available.
There is a low-price commercial version of Wine called CrossOver Linux. This has not been officially tested like Wine, but it probably will work well too.
Virtualization software like VMWare/Parallels likely also works well (or even better), though its a more heavy weight solution that requires a copy of Windows be installed and is less seamless with Linux.
Comparison of Methods¶
Windows licensing: Using Wine does not require a Windows license. Using virtualization software like Parallels and VMWare VMWare does require you have and install a licensed copy of Windows into the virtual machine (Windows is purchased separately). The Wine method can be more cost effective.
Performance: Wine runs largely at native speeds. Fly’m speed under Wine has much improved as of SIMION 220.127.116.11, so it’s recommended to update SIMION if you have an earlier version. In previous SIMION versions, Fly’ms under Wine could be 2x slower or much worse. Fly’m speed under Wine is now about the same as under native. Refine speeds are about the same as well.
Excel (conditionally supported): Controlling Excel from SIMION is only supported via virtualization (i.e. Parallels/VMWare not Wine) and only if Excel is a Windows version installed on the virtual machine. As of 18.104.22.168, examples can alternately use gnuplot.
CHM file: SIMION 8.1 uses a Windows CHM file for supplementary documentation. This can be read on Linux, but see caveats in the “Notes on Windows Help CHM” section below.
Summary: SIMION 8.1/8.0 runs well on all the above options. If you want integration with (Windows) Excel you should use virtualization (VMWare or Parallels), but if you want better integration with Linux applications you might want to instead use Wine since SIMION will then run more like an Linux application. SIMION 7.0 works ok on all the above but seemed to run most smoothly under Wine (SIMION 7.0 does some tricky things with the mouse that cause some non-critical mouse behavior issus under VMWare).
CrossOver Linux will likely work too (untested)–see also Mac OS (CrossOver Mac).
Running the 64-bit version of SIMION on Wine64 appears to basically work although some crashes in the test suite are seen (as of Wine-1.3.26), so it is not yet officially validated. Wine64 itself is relatively new and might not yet be stable. It is hoped to resolve any problems and officially support Wine64 as soon as reasonably possible. The SIMION installation program is 32-bit, so you will need the “shared WoW64 setup” on the Wine64 page to run the 32-bit installer and 64-bit program.
Notes on Windows Help CHM¶
The supplementary documentation in Windows Help format (simion.chm) in SIMION 8.1 can be viewed in Linux, although there may be some caveats in some cases.
The pages may all display blank when viewed in the default Wine help viewer (wine hh simion.chm). This appears to be a bug in Wine (1.2.2 at least), if the simion.chm file is located in a path that contains spaces (which it usually does since the default install location is in Program Files\SIMION-8.1). In Wine 1.2.2, you may move simion.chm into a path that does not contain space and then open it using wine hh simion.chm. This does not appear to be a problem in Wine 1.3.26, provided wine gecko wine1.3-gecko is installed, and pages also appear to render better.
Some links may not work, such as links to external pages outside of the help file (e.g. the “List of SIMION Examples”). To work around that, you may just load the file examples\README.html separately in your web browser.
The help file can also be viewed in alternate CHM viewers:
- CHM viewer “hh” built into Wine (recommended, no additional installation required)
These all basically work, but each can have one or more issues:
- intra-page links don’t work (but inter-page links are ok)
- links to remote (http) pages don’t work
- links to external pages (e.g. README.html files in examples) don’t work
- search doesn’t work
- page styling quirks
In SIMION 8.0, the supplementary documentation was in plain HTML format, which is fine in Linux. That format option and others might be (re)added in 8.1.x to more seamlessly support non-Windows platforms (these other formats exist but are currently considered experimental and not presently posted).
Batch I/O Performance¶
When running SIMION in batch mode, SIMION normally flushes standard output after each line printed. It might be observed (e.g. under a virtual machine) that the constant updating of the terminal display slows Fly’m performance 10% or more. You can make flushing less frequent by adding the command io.stdout:setvbuf("full", 4096) to the top of your workbench user program (see io file:setvbuf()). Alternately, a similar improvement is obtained by piping the output to file or through cat:
simion.exe --nogui fly --retain-trajectories=0 test.iob > result.txt
- 22.214.171.124: Fly’m speed (GUI and non-GUI) improved by a couple of times under Wine/Linux. Fly’m speed is close to native now under Wine. Tested on Wine 1.4.
- 126.96.36.199: Performance improvements to Fly’m (GUI mode) and Log window.
- 188.8.131.52: 64-bit SIMION now experimentally supported on Linux via Wine64.
- 8.0.6: Various fixes for Wine/Linux (keyboard and OpenGL).
- 8.0.5-TEST30: Fixed asyncronous I/O on Linux. Affects since 8.0.5-TEST1.
- 8.0.4-TEST24: Issue-I461 - Fixed particle flying gets very slow after switching tab in View under Wine/Linux.