Marko Kreen wrote:But the tests surely need to check for unaligned cases, as that's what we're likely to hash, no? I believe the ability to add unicode-juggling was a major point with the patch, so perhaps Jenkins' isn't such a good option. I'm not familiar with data-mangling the way Linus (or Theo Tso is), so I hadn't even considered that aspect of unrolled hashes. True. FNV is used in both MySQL and PostgreSQL. I'd say it's safe to assume it's fairly well tested. Thanks. I'll see if I can add it, although it'll probably have to wait until I have reason to dig into it at work again. I've added the hash to the code-base, but not yet incorporated it into the test-case. True. I was in contact with him a while back since I wanted to use it in an opensource project, but the licensing issues made me go with another one instead. The patch got turned down anyways, so it was a non-issue in the end, but... Ah well. Unless arena allocated, like we do in git. I'm not surprised that this test favours Jenkin's and Hsie's. That's to be expected as those benefit far more than simpler hashing algorithms for long strings. The overhead when trying shorter strings (say, between 3 and 15 chars, and not necessarily 4-byte aligned) sometimes make them quite a lot slower though. Well, memcpy() isn't very interesting to compare against hashes, as they test vastly different parts of the hardware's parts' performance. memcpy() should also perform exactly the same no matter what the test-data, which isn't always true for hashes. What *would* be interesting would be something along the lines of "duff_cpy()": ie, an unrolled loop that aligns itself and copies each byte to the same address each time. The bytewise equivalence would ofcourse be magic_cpy(unsigned char *k, int len) { unsigned char magic; do { magic = *k++; } while (--len); } Interesting output, but not very surprising. Do you have the code available somewhere? -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Tomasz Kłoczko | Is it time for remove (crap) ALSA from kernel tree ? |
| Greg Kroah-Hartman | [PATCH 008/196] Chinese: add translation of volatile-considered-harmful.txt |
| David Miller | Slow DOWN, please!!! |
| Aubrey | O_DIRECT question |
git: | |
| Martin Langhoff | Re: pack operation is thrashing my server |
| Francis Moreau | emacs and git... |
| Mirko Stocker | Working with Git and CVS in a team. |
| Keith Packard | Re: parsecvs tool now creates git repositories |
| Chris Peterson | [PATCH] drivers/net: remove network drivers' last few uses of IRQF_SAMPLE_RANDOM |
| Natalie Protasevich | [BUG] New Kernel Bugs |
| Karen Xie | [RFC][PATCH 1/1] cxgb3i: cxgb3 iSCSI initiator |
| Jeff Garzik | [git patches] net driver updates for .27 |
| Jonathan Thornburg | svnd questions (encrypting all of a partition or disk) |
| Richard Stallman | Real men don't attack straw men |
| Daniel Ouellet | identifying sparse files and get ride of them trick available? |
| Brandon Lee | DELL PERC 5iR slow performance |
| high memory | 4 hours ago | Linux kernel |
| semaphore access speed | 7 hours ago | Applications and Utilities |
| the kernel how to power off the machine | 8 hours ago | Linux kernel |
| Easter Eggs in windows XP | 10 hours ago | Windows |
| Shared swap partition | 11 hours ago | Linux general |
| Root password | 11 hours ago | Linux general |
| Where/when DNOTIFY is used? | 13 hours ago | Linux kernel |
| How to convert Linux Kernel built-in module into a loadable module | 16 hours ago | Linux kernel |
| Linux 2.6.24 and I/O schedulers | 16 hours ago | Linux kernel |
| USB Driver -- Interrupt Polling -- A Little Help Please | 22 hours ago | Linux general |
