Constantin Fürst
|
e551e6b56c
|
fix spelling mistakes and such in the recent additions
|
11 months ago |
Constantin Fürst
|
27cd0f07d1
|
continue writing the implementation chapter, which is almost complete now
|
11 months ago |
Constantin Fürst
|
bbdb2d9588
|
prevent another type of deadlock that could arise from destroying a CacheData instance that never had tasks assigned to it due to waiting infinitely on it
|
11 months ago |
Constantin Fürst
|
e9785f3f9e
|
prevent deadlocks by setting the cache pointer to the source address in case of errors
|
11 months ago |
Constantin Fürst
|
fa23c6c50a
|
improve the handler distribution and waiting on task completion for cacher
|
11 months ago |
Constantin Fürst
|
41cf89f7a6
|
continue writing the implementation chapter
|
11 months ago |
Constantin Fürst
|
627ab7eec6
|
continue writing the implementation chapter
|
11 months ago |
Constantin Fürst
|
7e48c96828
|
distribute multiple per-node locks for the cache state and allocate them on the respective numa node for fastest possible access
|
11 months ago |
Constantin Fürst
|
cc452fb1a4
|
Merge branch 'dev-caching' into writing
|
11 months ago |
Constantin Fürst
|
1a3cb6dada
|
prettify credit in the readme
|
11 months ago |
Constantin Fürst
|
0ad0e4af04
|
remove the manual build script and add numa and cpu asignment to the execution script
|
11 months ago |
Constantin Fürst
|
6cc49daf89
|
remove all unused files and benchmark methods, adapt the MAX-Benchmark to use the cacher, remove manually-set numa configuration and replace it with dynamically adapting to the configured affinity, add two more template-options to the worker that control whether a is cached as well and whether scanb waits on the caching
|
11 months ago |
Constantin Fürst
|
2b635d025d
|
add defaulted-constructor for cache which got implicitly deleted by deleting the copy constructor
|
11 months ago |
Constantin Fürst
|
641a7593fe
|
add query driven prefetching code repository copy
|
11 months ago |
Constantin Fürst
|
5578f06c80
|
adapt copy policy function to take data size as well and use this to only use destination nodes dsa engine for small data sizes on xeonmax
|
11 months ago |
Constantin Fürst
|
da38c048ca
|
pass data size to copy policy function too
|
11 months ago |
Constantin Fürst
|
3301b17497
|
write a chunk of implementation chapter
|
11 months ago |
Constantin Fürst
|
c19ffa975c
|
reorder state chapter and add todos for the new sections, namely on hbm and query driven prefetching
|
11 months ago |
Constantin Fürst
|
e5b6230dc6
|
add todo to unfinished part of conclusion and add bullet points from implementation as futurework
|
11 months ago |
Constantin Fürst
|
09a95f1e50
|
add todos to unfinished parts of the thesis
|
11 months ago |
Constantin Fürst
|
f910efd7e8
|
write section 4.2 on cache design
|
11 months ago |
Constantin Fürst
|
e4a681ac1e
|
delete the copy-constructor for cache as copying it is undesired behaviour
|
11 months ago |
Constantin Fürst
|
e570a6fe69
|
reduce the line-count of the switch statement for dml::StatusToString by inlining return with case statements
|
11 months ago |
Constantin Fürst
|
0fdf650fe4
|
improve the class-comments for Cache and CacheData, also free incomplete_cache_ if it has not been waited for (see comment on this)
|
11 months ago |
Constantin Fürst
|
8ba716353a
|
add Clear() function which forces flush on the entire Cache and remove non-warning/error status messages from the cacher
|
11 months ago |
Constantin Fürst
|
d7c5c55208
|
turn library into single-header mode
|
11 months ago |
Constantin Fürst
|
4fa5ef6522
|
accept existing cache if the cached block is larger than the requested view
|
12 months ago |
Constantin Fürst
|
6ab88595b7
|
add test for the cache-flush logic which was previously not tested
|
12 months ago |
Constantin Fürst
|
7dfbed68fe
|
handle allocation slightly different, introduce a separate function for cleaner code that does on-node memory allocation, first querry the available size and do not rely on numa_alloc_onnode to report nullptr if the size is not really available
|
12 months ago |
Constantin Fürst
|
4ddd96adcb
|
remove extra whitespace from output in main function
|
12 months ago |
Constantin Fürst
|
e3e17cec7b
|
extend the main method of the small supplied test program to allow running on multiple threads
|
12 months ago |
Constantin Fürst
|
e5b96727cd
|
add missing inline specifier to functions as this is header-only code
|
12 months ago |
Constantin Fürst
|
9c06bd4fa9
|
add class-definition comments and clear some double-newlines
|
12 months ago |
Constantin Fürst
|
53e05d096c
|
add even more comments and remove an old code line that modified the reference counter of cache data from the outside
|
12 months ago |
Constantin Fürst
|
52566fc13b
|
print to cerr for bad states in the test-main
|
12 months ago |
Constantin Fürst
|
46de3151a2
|
add a lot of comments to the code, also handle errors in the dml handlers gracefully
|
12 months ago |
Constantin Fürst
|
c01eafedae
|
refactor the cacher to reduce complexity, removes the access guarantees (relaxed,immediate,...), uses the fact that other tasks will wait on atomic value change for the cache-pointer if it is nullptr to add the entry to cache structure earlier reducing cost of two threads accessing new entry at the same time, splits the offloading-cache.hpp file into two with one containing the data-class (represents a cache entry and task) and the other containing the cacher itself
|
12 months ago |
Constantin Fürst
|
395d307310
|
fix an issue with the freeing of data in the cacher
|
12 months ago |
Constantin Fürst
|
f19c069b0f
|
always perform copy from src and dst node, add another log output about the split
|
12 months ago |
Constantin Fürst
|
5e30a370ce
|
finish first stage of caching implementation and provide a rudimentary test function in the main
|
12 months ago |
Constantin Fürst
|
d396056230
|
provide first draft of implementations for the cachers functionality
|
12 months ago |
Constantin Fürst
|
623366433b
|
continue modifying the declarations for the cacher and providing some first definitions
|
12 months ago |
Constantin Fürst
|
f91cd3202f
|
add project 'offloading cacher' and function declarations for the cacher in its header file
|
12 months ago |
Constantin Fürst
|
3f5f5f267d
|
note down bullet points for the content of chapter 3 (performance)
|
12 months ago |
Constantin Fürst
|
ef3058ed00
|
add missing tex files after restructure and rewrite the title page in english
|
12 months ago |
Constantin Fürst
|
f9e3e7e4df
|
slight restructuring of the thesis, part of formulating the contents
|
12 months ago |
Constantin Fürst
|
35ae279c3b
|
remove todos and todo page from the tex files, remove test-texcode, add some structure points
|
12 months ago |
Constantin Fürst
|
f0273d526f
|
extend the glossary entry for pcie dmr
|
12 months ago |
Constantin Fürst
|
0c775fc0ce
|
change citation style to ieee standard
|
12 months ago |
Constantin Fürst
|
b124d594bd
|
improve positioning of figures for hw/sw architecture section of chapter 2
|
12 months ago |