1
edit
Changes
→Description
==== Description ====
''' Removing CPU Bottleneck ''' Removing the old CPU bottleneckin the <code>byteCipher</code> function:
for (int i = 0; i < bufferSize; i++){
// going over every byte in the file
...
Removing the CPU bottleneck inside the <code>xorCipher</code> method:
for (int i = 0; i < bufferSize; i++){
// inverting every byte in the buffer
buffer[i] = buffer[i] ^ keyBuffer[i];
}
And replacing it with
...
getXorBuffer << < (n + ntpb - 1) / ntpb, ntpb >> >(d_a, d_b, bufferSize);
...
''' Device Functions '''
Converting <code>cycle</code> and <code>rc4_output</code> functions to device functions:
'''Creating Kernels'''
We created kernels for each of the 4 different methods of Cipher that the program handles:
/**
* Description: RC4 Cuda Kernel