summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-06-28analysis: compute average and cumulative trajectory lengthHEADmasteranalysisJan Huwald
2013-06-25add canon program option to test canonicalisationJan Huwald
2013-06-25.Jan Huwald
2013-06-25use ordered map in cycleStat() to get sorted resultJan Huwald
2013-06-25change computation of cycle id and redundancy detectionJan Huwald
1. Introduce acanonize(state), which returns a canonical state and a (bit-encoded) label wether the encoded state was itself canonical 2. Use this labelled canonical state as inital color of each state. Now: - every redundant cycle has the same color (except for the label) - of each set of redundant cycles exactly one has the label set 3. Use the extended label to gather loop statistics.
2013-06-25fix computation of maxStateJan Huwald
2013-06-25.Jan Huwald
2013-06-24skip unneccessary loops in findCycleJan Huwald
2013-06-24support canceling iterTrans if no work is done anymoreJan Huwald
A bool is passed to the worker function to store wether any work has been done in an iterState round. To prevent cache line bouncing, each worker thread has its own cache line aligned bool which is ultimately merged.
2013-06-14compute cycle redundancy again, refractor, optimizeJan Huwald
2013-06-14.Jan Huwald
2013-06-14refractor, change cycle identificationJan Huwald
Major changes: - compute cycle id (cycle minimum) in parallel to future state - skip computation of cycle stats for non-canonical cycles Minor changes: - move computation of several arrays around to improve locality and reduce random memory reads - distinguish between State and StateIter: the later can contain maxState + 1 and is used in loops and as pointer. - rename maxState to numState, add acutal maxState - time performance of memory allocation
2013-06-14timer: add \t for easier parsingJan Huwald
2013-06-14mmalloc: use placement new instead of castingJan Huwald
2013-06-14mmalloc: only alloc via hugetlb memory areas >= 1 GBJan Huwald
2013-06-14mmalloc: unlink tmp file after openingJan Huwald
Otherwise it would hang around when the program stops and waste the precious hugetlbfs space (read: RAM).
2013-06-14Makefile: fix, improve, restructureJan Huwald
2013-06-14set default bit-width to 16Jan Huwald
Default value should be quick to see what the program does.
2013-06-14remove packed_arrayJan Huwald
In addition to being broken by design it was order_s_ of magnitude to slow. Adding cores to the computation increased runtime.
2013-06-07add mmalloc.hpp, support hugetlbfs allocationJan Huwald
2013-06-04add verbose timer function, replace bitset w/ packed_arrayJan Huwald
Replacing bitset with packed_array is neccessary to allow parallel access to proximate array cells.
2013-06-04packed_array: add a little atomic access logicJan Huwald
2013-06-04go to 64-bit State, use bit-packed arrayJan Huwald
2013-06-03more parallelism, cheap race checkJan Huwald
Assure that at last each parallel thread processes at least maxWorkdSize elements. This garantues that even for packed arrays of bit-sized elements that thread boundaries lie on machine word boundaries.
2013-06-03count garden of eden statesJan Huwald
2013-03-06add sge_task.shJan Huwald
2013-03-06add compile-time variable bit lengthJan Huwald
2013-02-28.Jan Huwald
2013-02-28add parallel executionJan Huwald
2013-02-28get memory via mmap, try huge tables and prepopulationJan Huwald
2013-02-27merge symmetric cyclesJan Huwald
2013-02-27make iterTrans verboseJan Huwald
2013-02-27add cycle statistics functionJan Huwald
2013-02-27Initial commitJan Huwald
contact: Jan Huwald // Impressum