[Vm-dev] VM on Solaris (was: Camera sig fault on 64 bits machines.)

Andreas Wacknitz a.wacknitz at gmx.de
Tue Apr 22 19:05:46 UTC 2014


This evening I further dealt with the problems on OpenSolaris (openindiana).
I finally got a pthread version running without superuser rights. But I don’t know whether this will really work (ATM it does for me)
because I removed the call to pthread_setschedparam in beatStateMachine leaving the heartbeat thread with the same
priority than the vm thread. I tried to replace the pthread_setschedparam call with a similar pthread_setschedprio call but
with no luck (same problem: failed call with "Not owner"). I don’t know wether this is a general problem with the pthreads implementation
on Solaris or just a problem with the gcc version (4.4.4) coming with the openindiana distribution I am using. Maybe this works only
with the compilers and libraries that is delivered by Oracle (Solaris 10 ships with gcc 3.4.3; Solaris Studio has its own compilers).

Second, I needed to change the implementation of ioUpdateVMTimezone because Solaris does not have time_t->tm_gmtoff.
There seem to be copies of this function in all three heartbeat files with the one in sqUnixITimerHeartbeat.c working for those OS’s without
tm_gmtoff.

NativeBoost doesn’t seem to work yet (at least UnixEnvironment>>environ raises an error: „failed to get a symbol address: environ“).

This VM gives me 686787391 bytecodes/sec and 80516849 sends/sec on my 6 years old Sun Ultra 24 (2,4GHz Intel Q9300).
I get similar values for the VM with pthread_setschedparam call and superuser rights.
My 4 years old iMac (2,8GHz Core i5) gives me 829149797 bytecodes/sec; 117122195 sends/sec.
So the results seem comparable.

Andreas




More information about the Vm-dev mailing list