Cyan4973 / xxHash

Extremely fast non-cryptographic hash algorithm
http://www.xxhash.com/
Other
9.16k stars 777 forks source link

[FIXED] Windows binary #96

Closed sergeevabc closed 7 years ago

sergeevabc commented 7 years ago

Sorry to bother you, but why there are no binaries yet? I would appreciate stepping into the future with xxHash for Windows x64 on board. There are many .iso, .mkv, etc waiting to be processed with your rapid checksum gem.

Cyan4973 commented 7 years ago

We don't have Windows-based CI for xxHash project yet.

This is a task that will have to be completed before expecting automatic generation of Windows Binaries for Releases.

sergeevabc commented 7 years ago

This is strange. xxHash is out there for years, author’s page lists dozen of implementations, there is even optimized 202 lines of Windows-ready code to compile. Yet it remains out of reach for ordinary people.

sergeevabc commented 7 years ago

Tried to compile with Tiny C Compiler. However the resulting xxh.exe crashes while calculating the checksum of somefile.

tcc xxhash.c xxhsum.c -o xxh.exe
xxh.exe somefile
Bulat-Ziganshin commented 7 years ago

since TCC isn't optimizng, i foresee a lot of crying why xxh isn't as fast as advertized :)))

Cyan4973 commented 7 years ago

I used to play and test with TCC several years ago.

Unfortunately, this compiler is too buggy to be a valid target. In particular, the 64-bits code generation was quite problematic. It seems it still is.

Cyan4973 commented 7 years ago

I added a version of xxhsum compiled with Visual Studio 2013 as attached file to current release (0.6.2). The operation is manual, and I was lucky to have a Windows PC available to do it.

alphaonex86 commented 7 years ago

Note: I compil Ultracopier with mingw under wine on my server

sergeevabc commented 5 years ago

@Cyan4973, mere Windows user are eager to try out XX3 as well. Consider adding the binary, please.

Cyan4973 commented 5 years ago

I'm okay with providing Windows binaries, the only issue is that, in term of usage, xxhsum will not give much. The only part of XXH3 integrated into xxhsum is the benchmark module (-b). But it can't be used to generate hash values, since the format is not stable (yet).

Cyan4973 commented 5 years ago

2 Windows binaries have been added to the Release tab, one SSE2 and one AVX2. Hopefully, at least one of them will run on your target system. Both are x64, I was not successful at generating 32-bit binaries so far.

easyaspi314 commented 5 years ago

I should probably set up a CPU dispatcher like I did in XXH32a. Of course, I don't have an AVX2 chip, but I can write the test code and have like you test it. That way we don't need special binaries.