forked from naskitis/Cache-Conscious-Data-Structures
-
Notifications
You must be signed in to change notification settings - Fork 0
/
quick_compare.bsh
executable file
·61 lines (45 loc) · 1.31 KB
/
quick_compare.bsh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#! /bin/bash
FILE=$1
# a simple cache flusher. Provide one for your experiments, but
# no need for a quick benchmark.
function flush {
#./flushit $FILE > /dev/null;
echo "";
}
if [[ -z "$FILE" ]]
then
echo "Please provide a dataset file name";
exit;
fi
if [ ! -e $FILE ]
then
echo File $FILE does not exist;
exit 1;
fi
#standard string data structures, as typically implemented
#in lecture notes and in computer science text books.
echo "Make sure you run these experiments in single-user/console mode ... no gui, no other programs running, etc";
#cache-conscious burst tries (2005) vs standard burst trie (2001)
flush;
./nikolas_askitis_array_burst_trie_exact 128 1 $FILE 1 $FILE
flush;
./nikolas_askitis_array_burst_trie_page 128 1 $FILE 1 $FILE
#cache-conscious hash tables (2004) vs standard hash table .
flush;
./nikolas_askitis_array_hash_exact 1048576 1 $FILE 1 $FILE
flush;
./nikolas_askitis_array_hash_exact_mtf 1048576 1 $FILE 1 $FILE
flush;
./nikolas_askitis_array_hash_page 1048576 1 $FILE 1 $FILE
flush;
./standard-hash 1048576 1 $FILE 1 $FILE
#cache-conscious binary search tree (2006)
flush;
./nikolas_askitis_array_bst 1 $FILE 1 $FILE
#alternative standard-chain data structures
flush;
./standard-bst 1 $FILE 1 $FILE
flush;
./standard-redblack 1 $FILE 1 $FILE
flush;
./standard-splay 1 $FILE 1 $FILE