Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
24 changes: 17 additions & 7 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,24 +11,34 @@ jobs:
strategy:
matrix:
include:
- os: macos-13
- os: macos-latest
command: ".github/workflows/val.sh"
- os: ubuntu-latest
command: ".github/workflows/val.sh"
chmod: true
- os: windows-2019
command: ".github/workflows/val.bat"
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
submodules: true
- name: Build
run: make all -j
submodules: recursive
- if: matrix.os == 'macos-latest'
name: Build (macOS)
run: |
brew install htslib
HTSLIB_PREFIX=$(brew --prefix htslib)

export CXXFLAGS="-I$HTSLIB_PREFIX/include $CXXFLAGS"
export LDFLAGS="-L$HTSLIB_PREFIX/lib $LDFLAGS"

make all -j
- if: matrix.os == 'ubuntu-latest'
name: Build
run: |
sudo apt-get install libhts-dev
make all -j
- name: Validate
run: |
chmod +x .github/workflows/val.sh
${{ matrix.command }}

Empty file added .vec.0.bin
Empty file.
Empty file added .vec.1.bin
Empty file.
Empty file added .vec.10.bin
Empty file.
Binary file added .vec.100.bin
Binary file not shown.
Empty file added .vec.101.bin
Empty file.
Empty file added .vec.102.bin
Empty file.
Empty file added .vec.103.bin
Empty file.
Empty file added .vec.104.bin
Empty file.
Empty file added .vec.105.bin
Empty file.
Empty file added .vec.106.bin
Empty file.
Empty file added .vec.107.bin
Empty file.
Empty file added .vec.108.bin
Empty file.
Empty file added .vec.109.bin
Empty file.
Empty file added .vec.11.bin
Empty file.
Empty file added .vec.110.bin
Empty file.
Empty file added .vec.111.bin
Empty file.
Empty file added .vec.112.bin
Empty file.
Empty file added .vec.113.bin
Empty file.
Binary file added .vec.114.bin
Binary file not shown.
Empty file added .vec.115.bin
Empty file.
Binary file added .vec.116.bin
Binary file not shown.
Empty file added .vec.117.bin
Empty file.
Binary file added .vec.118.bin
Binary file not shown.
Empty file added .vec.119.bin
Empty file.
Empty file added .vec.12.bin
Empty file.
Binary file added .vec.120.bin
Binary file not shown.
Empty file added .vec.121.bin
Empty file.
Empty file added .vec.122.bin
Empty file.
Empty file added .vec.123.bin
Empty file.
Empty file added .vec.124.bin
Empty file.
Empty file added .vec.125.bin
Empty file.
Empty file added .vec.126.bin
Empty file.
Empty file added .vec.127.bin
Empty file.
Binary file added .vec.13.bin
Binary file not shown.
Empty file added .vec.14.bin
Empty file.
Empty file added .vec.15.bin
Empty file.
Empty file added .vec.16.bin
Empty file.
Empty file added .vec.17.bin
Empty file.
Empty file added .vec.18.bin
Empty file.
Binary file added .vec.19.bin
Binary file not shown.
Empty file added .vec.2.bin
Empty file.
Empty file added .vec.20.bin
Empty file.
Empty file added .vec.21.bin
Empty file.
Empty file added .vec.22.bin
Empty file.
Empty file added .vec.23.bin
Empty file.
Empty file added .vec.24.bin
Empty file.
Empty file added .vec.25.bin
Empty file.
Binary file added .vec.26.bin
Binary file not shown.
Empty file added .vec.27.bin
Empty file.
Empty file added .vec.28.bin
Empty file.
Binary file added .vec.29.bin
Binary file not shown.
Empty file added .vec.3.bin
Empty file.
Empty file added .vec.30.bin
Empty file.
Empty file added .vec.31.bin
Empty file.
Empty file added .vec.32.bin
Empty file.
Empty file added .vec.33.bin
Empty file.
Empty file added .vec.34.bin
Empty file.
Empty file added .vec.35.bin
Empty file.
Empty file added .vec.36.bin
Empty file.
Empty file added .vec.37.bin
Empty file.
Empty file added .vec.38.bin
Empty file.
Empty file added .vec.39.bin
Empty file.
Empty file added .vec.4.bin
Empty file.
Empty file added .vec.40.bin
Empty file.
Empty file added .vec.41.bin
Empty file.
Empty file added .vec.42.bin
Empty file.
Empty file added .vec.43.bin
Empty file.
Binary file added .vec.44.bin
Binary file not shown.
Empty file added .vec.45.bin
Empty file.
Empty file added .vec.46.bin
Empty file.
Empty file added .vec.47.bin
Empty file.
Empty file added .vec.48.bin
Empty file.
Binary file added .vec.49.bin
Binary file not shown.
Empty file added .vec.5.bin
Empty file.
Empty file added .vec.50.bin
Empty file.
Empty file added .vec.51.bin
Empty file.
Empty file added .vec.52.bin
Empty file.
Empty file added .vec.53.bin
Empty file.
Binary file added .vec.54.bin
Binary file not shown.
Empty file added .vec.55.bin
Empty file.
Empty file added .vec.56.bin
Empty file.
Empty file added .vec.57.bin
Empty file.
Empty file added .vec.58.bin
Empty file.
Empty file added .vec.59.bin
Empty file.
Binary file added .vec.6.bin
Binary file not shown.
Empty file added .vec.60.bin
Empty file.
Empty file added .vec.61.bin
Empty file.
Empty file added .vec.62.bin
Empty file.
Empty file added .vec.63.bin
Empty file.
Empty file added .vec.64.bin
Empty file.
Empty file added .vec.65.bin
Empty file.
Empty file added .vec.66.bin
Empty file.
Empty file added .vec.67.bin
Empty file.
Empty file added .vec.68.bin
Empty file.
Binary file added .vec.69.bin
Binary file not shown.
Binary file added .vec.7.bin
Binary file not shown.
Binary file added .vec.70.bin
Binary file not shown.
Empty file added .vec.71.bin
Empty file.
Binary file added .vec.72.bin
Binary file not shown.
Binary file added .vec.73.bin
Binary file not shown.
Empty file added .vec.74.bin
Empty file.
Binary file added .vec.75.bin
Binary file not shown.
Empty file added .vec.76.bin
Empty file.
Empty file added .vec.77.bin
Empty file.
Binary file added .vec.78.bin
Binary file not shown.
Empty file added .vec.79.bin
Empty file.
Empty file added .vec.8.bin
Empty file.
Empty file added .vec.80.bin
Empty file.
Empty file added .vec.81.bin
Empty file.
Empty file added .vec.82.bin
Empty file.
Empty file added .vec.83.bin
Empty file.
Empty file added .vec.84.bin
Empty file.
Empty file added .vec.85.bin
Empty file.
Empty file added .vec.86.bin
Empty file.
Empty file added .vec.87.bin
Empty file.
Binary file added .vec.88.bin
Binary file not shown.
Binary file added .vec.89.bin
Binary file not shown.
Empty file added .vec.9.bin
Empty file.
Empty file added .vec.90.bin
Empty file.
Empty file added .vec.91.bin
Empty file.
Empty file added .vec.92.bin
Empty file.
Empty file added .vec.93.bin
Empty file.
Empty file added .vec.94.bin
Empty file.
Empty file added .vec.95.bin
Empty file.
Empty file added .vec.96.bin
Empty file.
Binary file added .vec.97.bin
Binary file not shown.
Empty file added .vec.98.bin
Empty file.
Binary file added .vec.99.bin
Binary file not shown.
20 changes: 10 additions & 10 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
CXX = g++
INCLUDE_DIR = -I./include -Igfalibs/include
CXX ?= g++
INCLUDE_DIR += -I./include -I./gfalibs/include
WARNINGS = -Wall -Wextra

CXXFLAGS = -g -std=gnu++14 -O3 $(INCLUDE_DIR) $(WARNINGS)
CXXFLAGS += -g -std=gnu++14 -O3 $(INCLUDE_DIR) $(WARNINGS) $(CFLAGS)

TARGET = kcount
TEST_TARGET = validate
Expand All @@ -12,8 +12,8 @@ SOURCE = src
INCLUDE = include
BINDIR := $(BUILD)/.o

LIBS = -lz
LDFLAGS := -pthread
LIBS = -lz -lhts
LDFLAGS += -pthread

#gfalibs
GFALIBS_DIR := $(CURDIR)/gfalibs
Expand All @@ -32,18 +32,18 @@ all: head validate naive

$(OBJS): %: $(BINDIR)/%
@
$(BINDIR)%: $(SOURCE)/%.cpp $(INCLUDE)/%.h $(GFALIBS_DIR)/include/*.h $(GFALIBS_DIR)/src/MinScan.cpp Makefile | $(BINDIR)
$(CXX) $(CXXFLAGS) $(CCFLAGS) $(LDFLAGS) -c $< -o $@
$(BINDIR)%: $(SOURCE)/%.cpp $(INCLUDE)/%.h $(GFALIBS_DIR)/include/*.h $(GFALIBS_DIR)/src/MinScan.cpp | $(BINDIR)
$(CXX) $(CXXFLAGS) -c $(SOURCE)/$(notdir $@).cpp -o $@

.PHONY: gfalibs
gfalibs:
$(MAKE) -j -C $(GFALIBS_DIR) CXXFLAGS="$(CXXFLAGS)" CCFLAGS="$(CCFLAGS)"
$(MAKE) -j -C $(GFALIBS_DIR)

validate: | $(BUILD)
$(CXX) $(CXXFLAGS) -o $(BUILD)/$(TARGET)-$(TEST_TARGET) $(SOURCE)/$(TEST_TARGET).cpp $(LIBS)
$(CXX) $(CXXFLAGS) -o $(BUILD)/$(TARGET)-$(TEST_TARGET) $(SOURCE)/$(TEST_TARGET).cpp

naive: gfalibs $(GFALIBS_DIR)/include/*.h | $(BUILD)
$(CXX) $(CXXFLAGS) -o $(BUILD)/$(TARGET)-$(NAIVE_TARGET) $(SOURCE)/$(NAIVE_TARGET).cpp $(GFALIBS_DIR)/*.o $(LIBS)
$(CXX) $(CXXFLAGS) -o $(BUILD)/$(TARGET)-$(NAIVE_TARGET) $(SOURCE)/$(NAIVE_TARGET).cpp $(GFALIBS_DIR)/*.o

$(BUILD):
-mkdir -p $@
Expand Down
2 changes: 1 addition & 1 deletion gfalibs
1 change: 1 addition & 0 deletions include/input.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
struct UserInputKcount : UserInput {
uint32_t hashThreads = 7, writeThreads = 4; // small prime number, max
int keepTmp = 0;
uint8_t decompression_threads = 4, compression_threads = 6;
};

class Input {
Expand Down
107 changes: 107 additions & 0 deletions include/kcount.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
#ifndef KCOUNT_H
#define KCOUNT_H

#include <htslib/sam.h>
#include <htslib/thread_pool.h>
#include <htslib/bgzf.h>

class KDB : public Kmap<KDB, UserInputKcount, Key, uint8_t, uint32_t> { // CRTP
UserInputKcount userInput;
public:
Expand All @@ -9,4 +13,107 @@ class KDB : public Kmap<KDB, UserInputKcount, Key, uint8_t, uint32_t> { // CRTP
}
};

#define BUFFER_RESERVE_SIZE 2097152 // 2MB preallocation for efficiency
template<class DERIVED, class INPUT, typename KEY, typename TYPE1, typename TYPE2>
void Kmap<DERIVED, INPUT, KEY, TYPE1, TYPE2>::initBuffering() {

Init_Genes_Package(k, sLen);
std::string kmerBatch;
kmerBatch.reserve(BUFFER_RESERVE_SIZE); // Preallocate memory for efficiency
Distribution_Bundle* bundle = Begin_Distribution(bufferFiles);

uint32_t batchSize = 10000000; // number of bases processed by a thread
htsThreadPool tpool_read; // htslib threadpool pointer
std::string newLine, seqHeader, seqComment, line, bedHeader;
std::size_t numFiles = userInput.inFiles.size();
uint32_t batchN = 0;
uint64_t processedLength = 0;
lg.verbose("Processing " + std::to_string(numFiles) + " files");

const static phmap::flat_hash_map<std::string,int> string_to_case{
{"fasta",1},
{"fa",1},
{"fasta.gz",1},
{"fa.gz",1},
{"fastq",1},
{"fq",1},
{"fastq.gz",1},
{"fq.gz",1},
{"bam",1},
{"cram",1}
};

for (uint32_t i = 0; i < numFiles; i++) {

std::string file = userInput.file('r', i);
std::string ext = getFileExt(file);
lg.verbose("Processing file: " + file);

switch (string_to_case.count(ext) ? string_to_case.at(ext) : 0) {

case 1: { // fa*[.gz], bam, cram

samFile *fp_in = hts_open(userInput.file('r', i).c_str(),"r"); // open file
bam_hdr_t *bamHdr = sam_hdr_read(fp_in); // read header
bam1_t *bamdata = bam_init1(); // initialize an alignment
std::string inSequence; // new sequence that we can reuse
int64_t pos_before = bgzf_tell(fp_in->fp.bgzf) >> 16;

int64_t compressed_bytes_read = 0, totalKmers = 0;

tpool_read = {NULL, 0};
tpool_read.pool = hts_tpool_init(userInput.decompression_threads);
if (tpool_read.pool)
hts_set_opt(fp_in, HTS_OPT_THREAD_POOL, &tpool_read);
else
lg.verbose("Failed to generate decompression threadpool with " + std::to_string(userInput.decompression_threads) + " threads. Continuing single-threaded");

while(sam_read1(fp_in,bamHdr,bamdata) > 0) {

int64_t pos_after = bgzf_tell(fp_in->fp.bgzf) >> 16; // keep track of the original file size to estimate compression
compressed_bytes_read += pos_after - pos_before;
pos_before = pos_after;

uint32_t len = bamdata->core.l_qseq; // length of the read
totalKmers += len;
uint8_t *seq = bam_get_seq(bamdata); // seq string

inSequence.clear();
inSequence.resize(len);
for(uint32_t i=0; i<len; ++i)
inSequence.at(i) = seq_nt16_str[bam_seqi(seq,i)]; // gets nucleotide id and converts them into IUPAC id

kmerBatch += inSequence;
kmerBatch.push_back('N');
processedLength += inSequence.size();

if (processedLength > batchSize) {
lg.verbose("Processing batch N: " + std::to_string(batchN++));
lg.verbose("Found " + std::to_string(totalKmers) + " total kmers (extracted from " + std::to_string(compressed_bytes_read) + " bytes)");
Distribute_Sequence(const_cast<char*>(kmerBatch.data()), kmerBatch.size(), bundle);
processedLength = 0;
kmerBatch.clear();
}
}
lg.verbose("Processing batch N: " + std::to_string(batchN++));
lg.verbose("Found " + std::to_string(totalKmers) + " total kmers (extracted from " + std::to_string(compressed_bytes_read) + " bytes)");
Distribute_Sequence(const_cast<char*>(kmerBatch.data()), kmerBatch.size(), bundle);

bam_destroy1(bamdata);
sam_close(fp_in);
if (tpool_read.pool)
hts_tpool_destroy(tpool_read.pool);
break;
}
default: {
fprintf(stderr, "cannot recognize input (must be: fasta, fastq, bam, cram).\n");
exit(EXIT_FAILURE);
}
}
}
End_Distribution(bundle);
finalize();
}


#endif /* KCOUNT_H */
6 changes: 4 additions & 2 deletions src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -369,8 +369,10 @@ int main(int argc, char **argv) {

case 0: // case for long options without short options

// if (strcmp(long_options[option_index].name,"line-length") == 0)
// splitLength = atoi(optarg);
if(strcmp(long_options[option_index].name,"decompression-threads") == 0)
userInput.decompression_threads = atoi(optarg);
if(strcmp(long_options[option_index].name,"compression-threads") == 0)
userInput.compression_threads = atoi(optarg);

break;
case '?': // unrecognized option
Expand Down
Binary file removed testFiles/random2.kc/.map.0.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.1.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.10.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.100.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.101.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.102.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.103.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.104.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.105.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.106.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.107.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.108.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.109.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.11.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.110.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.111.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.112.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.113.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.114.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.115.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.116.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.117.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.118.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.119.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.12.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.120.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.121.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.122.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.123.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.124.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.125.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.126.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.127.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.13.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.14.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.15.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.16.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.17.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.18.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.19.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.2.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.20.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.21.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.22.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.23.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.24.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.25.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.26.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.27.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.28.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.29.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.3.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.30.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.31.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.32.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.33.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.34.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.35.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.36.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.37.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.38.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.39.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.4.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.40.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.41.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.42.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.43.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.44.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.45.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.46.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.47.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.48.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.49.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.5.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.50.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.51.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.52.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.53.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.54.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.55.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.56.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.57.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.58.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.59.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.6.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.60.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.61.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.62.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.63.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.64.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.65.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.66.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.67.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.68.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.69.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.7.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.70.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.71.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.72.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.73.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.74.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.75.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.76.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.77.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.78.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.79.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.8.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.80.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.81.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.82.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.83.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.84.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.85.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.86.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.87.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.88.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.89.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.9.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.90.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.91.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.92.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.93.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.94.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.95.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.96.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.97.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.98.bin
Binary file not shown.
Binary file removed testFiles/random2.kc/.map.99.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.0.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.1.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.10.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.100.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.101.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.102.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.103.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.104.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.105.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.106.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.107.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.108.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.109.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.11.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.110.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.111.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.112.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.113.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.114.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.115.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.116.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.117.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.118.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.119.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.12.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.120.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.121.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.122.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.123.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.124.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.125.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.126.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.127.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.13.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.14.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.15.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.16.bin
Binary file not shown.
Binary file added testFiles/random2.kc/.vec.17.bin
Binary file not shown.
Loading
Loading