David Joseph
dff69e639d
Merge branch 'master' of ssh://git.repnop.org/public/ck
14 years ago
David Joseph
64f6702a4c
Implemented tournament and mcs barriers.
...
These are the tournament and mcs barriers from "Algorithms for Scalable
Synchronization on Shared-Memory Multiprocessors." Validation tests have
also been added for these barriers to regressions/ck_barrier/validate.
14 years ago
Samy Al Bahra
90fee0d839
PPC64: Import minimal PPC64 port.
...
Must implement templates now for phi in LL-phi-SC
templates to allow for lower latency fetch-and-phi
operations.
14 years ago
David Joseph
480db1321c
Implemented dissemination barriers.
...
Validation (ck_barrier_dissemination.c) is included.
14 years ago
Samy Al Bahra
7c8ab13343
Some fixes for strict aliasing. Silence some warnings from clang.
14 years ago
Samy Al Bahra
5900adb424
Move ck_barrier.h into shared/static object. Add CK_CC_CACHELINE.
...
There is absolutely no benefit to inlining these. Additionally,
explicitly set the alignment of a ck_barrier_combining_group to
a cacheline.
14 years ago
David Joseph
5e7073b9b7
Software tree combining barrier now supports an arbitrary number of threads per group.
...
Changed some structure names for ck_barrier_combining.
Modified unit tests to account for groups of threads.
14 years ago
Samy Al Bahra
09bfb13762
ck_barrier: Minor changes, reorganization.
...
Switched to using fas lock. Reorganized to match existing
style.
14 years ago
David Joseph
8c24a60866
Implemented ck_barrier_combining.
...
This is the software combining tree barrier from the MCS paper. Currently,
it uses a binary tree; it may be changed later to use an n-ary tree.
Validation (combining_validation.c in regressions/ck_barrier/validate)
has also been added.
14 years ago
Samy Al Bahra
44643bd5f3
regressions: Use volatile load in aggregation.
...
Pointed out by David Joseph.
14 years ago
Samy Al Bahra
d98d3d6ca5
regressions: Fix livelock condition in ck_barrier regression.
...
Instead of executing a join on the threads, aggregate existing state
of their counters. This can mean one missed increment per thread,
which is not a big deal.
14 years ago
Samy Al Bahra
6a66a97d15
Add ck_barrier targets to regressions/Makefile.
14 years ago
David Joseph
2c404fbc2f
Added throughput for ck_barrier_centralized.
14 years ago
Samy Al Bahra
949c6859a3
Make use of affinity delta in barrier test.
14 years ago
Samy Al Bahra
b5680c42d8
Add sense-reversing centralized barrier.
...
David is interested in implementing ck_barrier.h. These can serve
as skeletons.
14 years ago
Samy Al Bahra
646b3ef99e
Legal: Add copyright statements.
14 years ago
Samy Al Bahra
e9c0f0ce32
Add ck_hp latency tests for FIFO and stack.
14 years ago
Samy Al Bahra
d537d49acd
Add copyright statements.
14 years ago
Samy Al Bahra
c546565588
Add ck_hp_fifo latency tests.
14 years ago
Samy Al Bahra
809089d623
Revert "Commit additional x86 changes to make things work."
...
This reverts commit 0e548375f5
.
14 years ago
Devon H. O'Dell
0e548375f5
Commit additional x86 changes to make things work.
...
I'm tempted to conglomorate sexual deviances with Linus and git
right now that are not entirely appropriate. I'm unimpressed.
14 years ago
Samy Al Bahra
39537d08bb
Add spinlock_pop for stack latency test.
14 years ago
Samy Al Bahra
86eb6b9792
Implement latency tests for naive FIFO.
...
This benchmark simply provides fast path latency number
in ticks.
14 years ago
Samy Al Bahra
a181955305
Silence compiler warnings for ck_hp.
...
GCC suggests parenthesis in ck_hp_member_scan. Silence
the associated warnings.
14 years ago
Samy Al Bahra
b35ef5eceb
Make sure to define _GNU_SOURCE for cpuset functionality.
14 years ago
Samy Al Bahra
b87d6f8af1
Stub rdtsc on other platforms to ease porting.
14 years ago
Samy Al Bahra
bcaadcf094
Factor out some common utility functions.
...
Moved rdtsc and affinity logic to a single file which other
regression tests use. Single point of reference will ease
porting these to future architectures and platforms. Removed
invalid Copyright statement.
Added CK_CC_USED to force some code generation that I found
useful for debugging.
Added ck_stack latency tests and a modified version of djoseph's
modifications to benchmark.h for spinlock latency tests.
14 years ago
Samy Al Bahra
cbd30b2206
Initial import.
14 years ago