Open main menu

CDOT Wiki β

Changes

Fall 2017 SPO600 Project

481 bytes added, 11:03, 6 December 2017
no edit summary
1. Find an open source software package that includes a checksum or hash function or method that is implemented in a language that compiles to machine code (C, C++, or Assembler). This could be the Murmurhash, SHA family of hashes, or a similar function.
2. Benchmark the performance of the current hash implementation on AArch64 systems (I'll refer to hash and checksums both as hashes from now on, and functions and methods as functions). Be sure to isolate the hash performance from the performance of all other functions. Prove the repeatability of your observations.
3. Identify the strategy you will use in Stage 2 to attempt to optimize the hash functionfor better performance on AArch64 systems.This might include some combination of:* Altered build options* Code changes to permit better optimization by the compiler* Algorithm improvements* In-line assembler
4. Report on your results to this point.
2. Prove that the optimized code produces equivalent results to the original code.
3. Benchmark the performance changes ''to the hash function'' with your optimizations. If applicable, prove that your changes have not hindered the performance of the software on non-AArch64 platforms.
4. Report on your results.
* Write in detail, and include resources (such as test results, links to modified source code, and so forth) so that others can reproduce your results.
* Be thorough, professional, and convincing in your reported results. * Use correct spelling, grammar, and punctuation, and ensure that your blog post contains appropriate links and code/command examples.
* Include your personal reflections on the process and your learning.