[prev in list] [next in list] [prev in thread] [next in thread] 

List:       sbcl-devel
Subject:    [Sbcl-devel] sb-concurrency failures on amd x86-64 -- or: CAS
From:       "Tobias C. Rittweiler" <tcr () freebits ! de>
Date:       2010-05-09 10:33:54
Message-ID: 877hndfjot.fsf () freebits ! de
[Download RAW message or body]


Test failures of sb-concurrency have been reported to me on
AMDx86-64. See below for exact specification of the two systems.

The things, that the tests do something like the following:

  (handler-case
      (with-timeout 30.0
        (join-thread thread))
    (timeout ()
     (test-failure)))

And increasing the timeout from 30.0 to 90.0 make the tests succeed.

Mailboxes are implemented on top the old sb-queue which uses CAS to
insert stuff to the queue, and on semaphores which are built on top
mutexes and condition variables. Mutexes again involve CAS.

Is there anything about CAS on amd x86-64 with scenarios that make it
truly suck?

I'm quite puzzled because the first system is actually a uniprocessor.

  -T.


First System:

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 127
model name      : AMD Athlon(tm) Neo Processor MV-40
stepping        : 2
cpu MHz         : 1600.000
cache size      : 512 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt rdtscp
lm 3dnowext 3dnow rep_good extd_apicid pni cx16 lahf_lm svm extapic
cr8_legacy 3dnowprefetch
bogomips        : 3193.73
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc 100mhzsteps


Second System:

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 15
model		: 35
model name	: Dual Core AMD Opteron(tm) Processor 170
stepping	: 2
cpu MHz		: 2049.806
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 1
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 \
clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow rep_good \
extd_apicid pni lahf_lm cmp_legacy bogomips	: 4099.61
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor	: 1
vendor_id	: AuthenticAMD
cpu family	: 15
model		: 35
model name	: Dual Core AMD Opteron(tm) Processor 170
stepping	: 2
cpu MHz		: 2049.806
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 1
cpu cores	: 2
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 1
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 \
clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow rep_good \
extd_apicid pni lahf_lm cmp_legacy bogomips	: 4100.22
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management: ts fid vid ttp


------------------------------------------------------------------------------

_______________________________________________
Sbcl-devel mailing list
Sbcl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic