Thomas Preud'homme
243d8810f1
commtech: avoid a double free corruption
...
Remove srand and rand function call as they generates double free
corruption (???)
2009-07-01 01:49:16 +02:00
Thomas Preud'homme
e90348b54c
commtech: BUFFIX in freeing pages
...
Don't try to free the middle of an allocation
2009-07-01 01:48:13 +02:00
Thomas Preud'homme
ba13c18af7
commtech: Free pages when jikes barrier ends
2009-07-01 00:45:19 +02:00
Thomas Preud'homme
e04818645a
commtech: Add a new calculation method
...
This calculation performs only a loop and avoid cache pollution
2009-06-30 22:37:55 +02:00
Thomas Preud'homme
c98db4b4ba
commtech: do_calc() return a void **
...
This respect what we claim to send to the send() function and allow to
reduce the FAKE_NURSERY_START. Thus we are sure gcc won't optimize the
second part of the if in include/jikes_barrier_comm.h
2009-06-30 22:35:11 +02:00
Thomas Preud'homme
7bfc46db78
commtech: Delete pages free
...
Pages cannots be freed as fast as they are allocated, so this whole
mecanism can only delay the kernel panic. It's wiser to exit badly if
too much memory is consumed
2009-06-30 22:32:59 +02:00
Thomas Preud'homme
6b9777cb9b
Align shared_mem and initial jikes buffer
2009-06-25 14:01:18 +02:00
Thomas Preud'homme
c9323cd901
BUGFIX: Fix a possible deadlock if an error occurs
2009-06-25 13:47:50 +02:00
Thomas Preud'homme
177e548efe
commtechs benchs: fake_comm perform the writes
2009-06-24 23:35:58 +02:00
Thomas Preud'homme
2fe89da8a2
free memory after 100 Mo allocated
2009-06-24 23:26:51 +02:00
Thomas Preud'homme
8f0aecedec
comtechs bench: Better management of errors
2009-06-24 22:25:28 +02:00
Thomas Preud'homme
e9dc20ecd8
commtechs bench: time per loop + time per write
2009-06-24 18:18:05 +02:00
Thomas Preud'homme
34faada5fe
commtechs: Correctly parse outputs
2009-06-24 00:53:13 +02:00
Thomas Preud'homme
bc3c66027b
Display total time
2009-06-23 13:10:04 +02:00
Thomas Preud'homme
e39c05664a
comm lib have their own directory as calc libs
2009-06-23 12:30:49 +02:00
Thomas Preud'homme
a590ecca09
commtechs bench: calculation init takes an arg
2009-06-19 21:15:23 +02:00
Thomas Preud'homme
f4b3904541
commtechs bench: add calc_mat calculation lib
...
* Add a matrice calculation as one of the possible calculation
* Modify the makefile to permit calculation lib compilation
* Reorganize the makefile to be able to execute the default target
2009-06-19 20:53:34 +02:00
Thomas Preud'homme
f9128c0348
commtechs bench: Addresses are calculated
2009-06-19 13:27:08 +02:00
Thomas Preud'homme
dc6cd83ac1
commtechs bench: BUGFIX in options parsing
...
* nb_prod was tested with nb_cache_lines
* buf_size is unused => removed
* nb_cache_line => nb_bufs_sent
2009-06-18 22:10:15 +02:00
Thomas Preud'homme
e3b01f9357
commtechs bench: Reflect changes of papihighlevel
...
* commit 0ab6aa7576ac5ccdd9d0f99630016a2be87993b3 changed the API of
print_result
2009-06-18 18:39:42 +02:00
Thomas Preud'homme
d8b88b0e7f
commtech bench: BUGFIX of initialization
...
* Initialization can be blocking
2009-06-18 18:33:12 +02:00
Thomas Preud'homme
274f3cfd1b
communication techniques bench: refactoring (2)
...
Main changes:
* Better separation of what is common from what is specific to a
communication technique
* Consumer wait initialization of all producer threads
2009-06-18 15:55:20 +02:00
Thomas Preud'homme
b5575aa710
communication techniques bench: add c_cache_comm
2009-06-17 19:18:38 +02:00
Thomas Preud'homme
ebbb03f65e
communication techniques bench: BUGFIX
...
* -s really make the threads to be on a shared cache
2009-06-17 19:12:22 +02:00
Thomas Preud'homme
4cdee1503e
communication techniques bench: refactoring (1)
...
Main changes:
* change library initialization: initialization is done with
init_library once and init_thread_comm by each thread
* cont is now directly accessed by main
* list of struct communication_assoc -> array of struct thread_comm
* struct communication_channel -> struct comm_channel
2009-06-17 18:15:16 +02:00
Thomas Preud'homme
68589566a7
Communication techniques bench: add fake comm
2009-06-17 15:47:12 +02:00
Thomas Preud'homme
3059605ed4
Communication techniques bench: add jikes barrier
2009-06-17 15:46:22 +02:00
Thomas Preud'homme
0a4da54fec
Communication techniques bench: act more like a WB
...
* Send addresses of place in memory where another addresses has been
stored
2009-06-16 13:22:08 +02:00
Thomas Preud'homme
09bff9869e
communication technique benchs: We send addresses
...
* uintptr_t -> void *
* main send addresses where it has written something in
2009-06-16 12:58:30 +02:00
Thomas Preud'homme
12494e2fbc
More uniformity in communication techniques bench
...
* Only use 2 * BUF_SIZE bytes for shared_memory
2009-06-12 00:44:52 +02:00
Thomas Preud'homme
02db9b77f6
Bug in communication techniques bench
...
* prod_idx and cons_idx aren't declared volatile so compiler could
sur-optimize access to these variable and lead to a deadlock
2009-06-12 00:39:25 +02:00
Thomas Preud'homme
471fdef61e
Bug in communication techniques bench
...
* producers can finish before consumer and thus free the thread-local
storage they have which could lead to sigsegv from consumer
2009-06-12 00:34:33 +02:00
Thomas Preud'homme
e6912c4048
New technique in communication techniques bench
...
* shared_mem become shared_mem_opt
* Apparition of shared_mem (no optimisation)
2009-06-11 23:42:15 +02:00
Thomas Preud'homme
44aacb978e
Add a naive L2 shared option for comm techs bench
2009-06-10 23:30:24 +02:00
Thomas Preud'homme
9b4388a964
Add benchs to compare communication techniques
2009-06-10 09:58:50 +02:00