img
CV.condSignal()
0.2
30
30
Context switch (unbound threads)
89
430
80
Context switch (bound threads)
42
n/a
n/a
Context switch (processes)
54
n/a
n/a
Cancellation disable/enable
0.6
50
50
Test for deferred cancellation
0.25
7
0.2
Createan unbound thread
330
1500
1500
Create a bound thread
720
n/a
n/a
Create a process
45,000
n/a
n/a
Reference a global variable
0.02
0.2
0.08
Reference thread-specific data
0.59
n/a
65
Reference "fake" TSD
n/a
7
3
Explicit Synchronized
Acquire, then release, a synchronized section with no contention with the object mentioned
explicitly: synchronized(object){}.
Implicit Synchronized
Call an empty synchronized method with no contention.
Readers/Writer Lock/Unlock
Acquire, then release, a readers/writer lock as a writer with no contention.
Semaphore Post/Wait
Increment an unnamed semaphore, then decrement it. (On machines with LoadLocked
instructions, in POSIX this operation should take about the same time as a simple mutex
lock/unlock.)
notify()
Call notify() on an object that has no waiters.
condSignal()
Call condSignal() on a condition variable that has no waiters.
Local Context Switch (unbound)
Call sched_yield() from each of two unbound threads. (This number is much higher than
expected, much slower than seen on an SS10.)
Call Thread.yield().
Local Context Switch (bound)
Search WWH :
Custom Search
Previous Page
Multithreaded Programming with JAVA - Topic Index
Next Page
Multithreaded Programming with JAVA - Bookmarks
Home