This project demonstrates how to use CUDA to accelerate XOR-based unpacking of a file. It compares the execution time of XOR operations on the CPU versus the GPU, showing the performance benefits of parallel processing for large files (greater than 40 KB). For the moment, the program is just a benchmark between CPU/GPU execution speed.
- Reads a file into memory
- Performs XOR encryption/decryption on the CPU
- Performs XOR encryption/decryption on the GPU using CUDA
- Measures and compares execution times between CPU and GPU
- NVIDIA GPU with CUDA support
- CUDA Toolkit installed
- C++ compiler (GCC, MSVC, or Clang)
- (In the future, a release with a .exe file)
To compile the project, use the following command:
nvcc -o xor_cuda_unpacking main.cuRun the executable with a test file:
./xor_cuda_unpackingMake sure to modify file_path in the source code to point to the desired file.
The program outputs execution times for both CPU and GPU implementations, demonstrating the efficiency of GPU acceleration for large files.
This project is open-source and available under the MIT License.
R3dy