Add libcsse report.
This commit is contained in:
parent
e1dd841bbb
commit
b133015787
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=45753
1 changed files with 43 additions and 0 deletions
|
@ -1019,4 +1019,47 @@
|
||||||
commit bits were taken in for safe keeping.</p>
|
commit bits were taken in for safe keeping.</p>
|
||||||
</body>
|
</body>
|
||||||
</project>
|
</project>
|
||||||
|
|
||||||
|
<project cat='bin'>
|
||||||
|
<title>SSE variants of libc routines for amd64</title>
|
||||||
|
|
||||||
|
<contact>
|
||||||
|
<person>
|
||||||
|
<name>
|
||||||
|
<given>John</given>
|
||||||
|
<common>Baldwin</common>
|
||||||
|
</name>
|
||||||
|
<email>jhb@FreeBSD.org</email>
|
||||||
|
</person>
|
||||||
|
</contact>
|
||||||
|
|
||||||
|
<links>
|
||||||
|
<url href="http://trac.baldwin.cx:8080/freebsd/wiki/LibCSSE" />
|
||||||
|
</links>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<p>I have written SSE/AVX-optimized versions of a few libc
|
||||||
|
routines for amd64. So far the list includes <tt>memcpy</tt>,
|
||||||
|
<tt>memset</tt>, and <tt>strlen</tt>. For each routine I have
|
||||||
|
written a simple regression test as well as performed some
|
||||||
|
simple microbenchmarks on various AMD and Intel CPUs.</p>
|
||||||
|
|
||||||
|
<p>The simplest routine is <tt>strlen</tt> which appears to be a
|
||||||
|
general win in microbenchmarks. <tt>memcpy</tt> and
|
||||||
|
<tt>memset</tt> have proven trickier as different variants can
|
||||||
|
behave quite differently on different CPUs.</p>
|
||||||
|
|
||||||
|
<p>At present, I do not yet have a patch relative to libc. Once
|
||||||
|
I do, this will be suitable for more testing. I'd like to see
|
||||||
|
some real-world benchmarks that show measurable improvement
|
||||||
|
before pushing any of this up into the tree.</p>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<help>
|
||||||
|
<task>
|
||||||
|
<p>Create a branch that holds a modified libc and is suitable
|
||||||
|
for testing</p>
|
||||||
|
</task>
|
||||||
|
</help>
|
||||||
|
</project>
|
||||||
</report>
|
</report>
|
||||||
|
|
Loading…
Reference in a new issue