Re: MemoryBarrier vs volatile vs lock
- From: "DanGo" <DanGo@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Fri, 9 Sep 2005 18:30:01 -0700
Normalized results:
baseline = : 1.0
volatile_int = : 0.8990427
Memory Barriers = : 30.83289
VolatileMethods = : 59.72657
locked = : 12.79946
Interlocked = : 2.360716
Notes:
1) volatile field is about the same performance as non volatile
2) interlocked has great performance.
3) locked is faster than memory barrier
4) VolatileRead and VolatileWrite suck. (technically speaking)
Normalizing Daniel's results:
baseline = : 1.0
volatile_int = : 1.2
Memory Barriers = : 50.38
VolatileMethods = : 101.72
locked = : 92.7
Interlocked = : 37.8
5) volatile field still looks great
6) interlocked is a lot slower
7) Memory Barrier and VolatileMethods are about twice as slow
8) locked is 7 times slower and slower than a memory barier
Jon Skeets results:
baseline = 1.0
volatile_int = 1.013137391
Memory Barriers = 7.136038468
VolatileMethods = 16.33100877
locked = 9.045426727
Interlocked =4.450021857
9) Ok volatile still is great.
10) Interlocked performance is much better than Daniel's
11) locked is only marginally slower than MemoryBarrier (not faster as on my
laptop)
12) VolatileRead/Write are slower but not nearly as slow as Daniel and I are
seeing.
I'm surprised to see such a variety.
I'm using Beta 2. No multiprocessor no hyperthreading.
What are each of you using?
.
- Follow-Ups:
- Re: MemoryBarrier vs volatile vs lock
- From: Jon Skeet [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- From: Daniel O'Connell [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- References:
- MemoryBarrier vs volatile vs lock
- From: DanGo
- RE: MemoryBarrier vs volatile vs lock
- From: DanGo
- RE: MemoryBarrier vs volatile vs lock
- From: DanGo
- Re: MemoryBarrier vs volatile vs lock
- From: Daniel O'Connell [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- From: Jon Skeet [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- From: Daniel O'Connell [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- From: Jon Skeet [C# MVP]
- Re: MemoryBarrier vs volatile vs lock
- From: Daniel O'Connell [C# MVP]
- MemoryBarrier vs volatile vs lock
- Prev by Date: Re: MemoryBarrier vs volatile vs lock
- Next by Date: RE: MemoryBarrier vs volatile vs lock
- Previous by thread: Re: MemoryBarrier vs volatile vs lock
- Next by thread: Re: MemoryBarrier vs volatile vs lock
- Index(es):
Relevant Pages
|