[gambit-list] Problem in thread-sleep! may be a poor implementation of the select system call

vasil vasil.s.d at gmail.com
Wed Jan 28 14:03:30 EST 2009


After update scheme code displays n from 9040 to 9192.

Vasil

> 
> On 28-Jan-09, at 2:13 AM, vasil wrote:
> 
>> I consider linux RT kernel is somewhat unusual.
>>
>> Here is result of select-test.c on my Linux machine:
>>
>> $ time ./a.out
>>
>> real    0m10.015s
>> user    0m0.000s
>> sys     0m0.002s
>>
>> $ uname -a
>> Linux cassiopea 2.6.22-16-rt #1 SMP PREEMPT RT Mon Nov 24 19:03:10 GMT
>> 2008 x86_64 GNU/Linux
>>
>> Linux distro is Ubuntu 7.10 with RT linux kernel on laptop with Core 2
>> Duo in AMD64 mode.
>>
>> When I run scheme code, I've got a value of n 1001 or 1002.
>>
>> Vasil
> 
> Please try it again, this time after a "make update".
> 
> I have changed the implementation of the "select" logic so that if
> "select" is being called purely to sleep (i.e. there is no I/O to wait
> for), then the "nanosleep" function will be called.  I would appear that
> nanosleep has a much better resolution.  I also fixed a bug which gave a
> segfault when thread-sleep! was interrupted.
> 
> Marc
> 
> 




More information about the Gambit-list mailing list