(Open)Solaris doesn't use x64 TTH code
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
LinuxDC++ |
Confirmed
|
Medium
|
Unassigned |
Bug Description
Using rev 374, OpenSolaris b134.
TigerHash.cpp, chunk of code from line 26:
#ifdef _WIN32
#if defined(_M_X64)
#define TIGER_ARCH64
#endif
#if !(defined(_M_IX86) || defined(_M_X64))
#define TIGER_BIG_ENDIAN
#endif
#else // _WIN32
#if defined(__x86_64__) || defined(__alpha)
#define TIGER_ARCH64
#endif
#if !(defined(__i386__) || defined(__x86_64__) || defined(__alpha))
#define TIGER_BIG_ENDIAN
#endif
#endif // _WIN32
Apparently none of that matches my OSol box, and we end up using the slower 32-bit code.
If I add another line just forcing "#define TIGER_ARCH64", I get much better hashing speed. Using the normal code, I get around 58MB/s, with that define added, more like 81MB/s. Still not great, but its something.
tags: | added: core hashing |
These numbers were from an Intel machine so maybe __x86_64__ isn't defined on OpenSolaris?
--RZ