{"action":"created","issue":{"url":"https://api.github.com/repos/czifro-tech/mudt/issues/12","repository_url":"https://api.github.com/repos/czifro-tech/mudt","labels_url":"https://api.github.com/repos/czifro-tech/mudt/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/czifro-tech/mudt/issues/12/comments","events_url":"https://api.github.com/repos/czifro-tech/mudt/issues/12/events","html_url":"https://github.com/czifro-tech/mudt/issues/12","id":195134037,"number":12,"title":"Checksumming","user":{"login":"czifro","id":5378541,"avatar_url":"https://avatars.githubusercontent.com/u/5378541?v=3","gravatar_id":"","url":"https://api.github.com/users/czifro","html_url":"https://github.com/czifro","followers_url":"https://api.github.com/users/czifro/followers","following_url":"https://api.github.com/users/czifro/following{/other_user}","gists_url":"https://api.github.com/users/czifro/gists{/gist_id}","starred_url":"https://api.github.com/users/czifro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/czifro/subscriptions","organizations_url":"https://api.github.com/users/czifro/orgs","repos_url":"https://api.github.com/users/czifro/repos","events_url":"https://api.github.com/users/czifro/events{/privacy}","received_events_url":"https://api.github.com/users/czifro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2016-12-13T01:20:36Z","updated_at":"2016-12-16T00:17:14Z","closed_at":null,"body":"File partitions needed to be checksummed as they are read into memory.\r\nMemory buffers may vary between sender and receiver. Need to find way to ensure checksums are calculated the same way on both sender and receiver.\r\n\r\nSolutions?\r\n\r\n- [ ] Negotiate buffer sizes (could place performance restrictions on party with larger buffer capacity)\r\n- [x] Negotiate amount  to checksum at one time (could lengthen checksum process, negotiations should favor smaller buffer)\r\n- [ ] ~~Checksum every packet (could produce large checksum)~~\r\n- [ ] Modify checksum algorithm so that it returns a hash once it has processed x number of bytes, x is negotiated (could provide minimal performance impact, negotiations should favor larger buffer)"},"comment":{"url":"https://api.github.com/repos/czifro-tech/mudt/issues/comments/267483400","html_url":"https://github.com/czifro-tech/mudt/issues/12#issuecomment-267483400","issue_url":"https://api.github.com/repos/czifro-tech/mudt/issues/12","id":267483400,"user":{"login":"czifro","id":5378541,"avatar_url":"https://avatars.githubusercontent.com/u/5378541?v=3","gravatar_id":"","url":"https://api.github.com/users/czifro","html_url":"https://github.com/czifro","followers_url":"https://api.github.com/users/czifro/followers","following_url":"https://api.github.com/users/czifro/following{/other_user}","gists_url":"https://api.github.com/users/czifro/gists{/gist_id}","starred_url":"https://api.github.com/users/czifro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/czifro/subscriptions","organizations_url":"https://api.github.com/users/czifro/orgs","repos_url":"https://api.github.com/users/czifro/repos","events_url":"https://api.github.com/users/czifro/events{/privacy}","received_events_url":"https://api.github.com/users/czifro/received_events","type":"User","site_admin":false},"created_at":"2016-12-16T00:17:14Z","updated_at":"2016-12-16T00:17:14Z","body":"After redoing the smaller tests, these were the results:\r\n\r\n```\r\nData Length => 1KB\r\nHash Length => 1664 bytes\r\nNumber of iterations => 100\r\nBlock Size => 10 bytes\r\nIncremental Hash Memory Usage => ~46KB\r\nIncremental Hash Time => ~0 ms\r\nBacklog Hash Memory Usage => ~40KB\r\nBacklog Hash Time => ~0 ms\r\nMD5 Hash Memory Usage => ~40KB\r\nMD5 Hash Time => ~0 ms\r\n\r\nData Length => 1MB\r\nHash Length => 1632 bytes\r\nNumber of iterations => 100\r\nBlock Size => 10KB\r\nIncremental Hash Memory Usage => ~86.9MB\r\nIncremental Hash Time => 114 ms\r\nBacklog Hash Memory Usage => ~105.5MB\r\nBacklog Hash Time => 127 ms\r\nMD5 Hash Memory Usage => ~40KB\r\nMD5 Hash Time => 1 ms\r\n```\r\n\r\nI have yet to do the large data. To clarify the third set in the results, it does not do hashing in blocks. It hashes everything at once. This helps show the difference in my implementation of block hashing verses straight hashing."}}
{"actor":{"display_login":"czifro"}}