Kevin Greenan
762926920a
Third time's a charm (autoconf non-sense for PCLMUL).
2013-12-30 21:26:47 -08:00
Kevin Greenan
a98f6c1115
Added entry to configure.ac to avoid running autotools during normal build.
2013-12-30 16:31:54 -08:00
Kevin Greenan
a97563f0e4
Added PCLMUL to the autoconf macro...
2013-12-30 14:14:08 -08:00
Jim Plank
393fa02fd9
Some wordsmithing.
2013-12-30 15:55:37 -05:00
Jim Plank
2c583ca711
Version numbering, and pointing only to bitbucket.
2013-12-30 13:42:50 -05:00
Jim Plank
52376d9cc6
Copmiler errors with %llx.
2013-12-29 17:01:42 -05:00
Jim Plank
88bb18c651
Added time_tool.sh to tools for quick timing.
...
Modified gf_methods to be a little more flexible.
2013-12-29 16:51:37 -05:00
James Plank
8eec6d4676
Merged in kmgreen2/gf-complete-testautoconf (pull request #2 )
...
Autoconf
2013-12-28 14:29:06 -05:00
Kevin Greenan
ef18bccc3a
Group for w=128 was failing because SSE4 is enabled, but not ARCH_64 (on my Linux VM). Ensure that both are defined
...
when init'ing group for w=128.
2013-12-10 09:00:32 -08:00
Kevin Greenan
e1c76b4dd4
Added exhaustive test support (Ethan's changes to gf_unit and gf_methods) and overrode autoconf's defaults for CFLAGS.
2013-12-07 16:05:31 -08:00
Kevin Greenan
87bb260417
Adding flag for SSSE3. Must have missed it when I updated the ax_ext() macro.
2013-12-05 08:35:18 -08:00
Kevin Greenan
639c106d23
Build failed... It was because the some headers were in the wrong place.
...
It was working for me because the headers were installed in /usr/local/include
on my Linux box.
2013-12-04 21:58:41 -08:00
Kevin Greenan
e0d7928749
Copy README.txt to README
2013-12-04 21:27:29 -08:00
Kevin Greenan
153dd20988
Setting up autoconf/automake for GF-Complete
...
Also re-organized the directory structure.
Signed-off-by: Kevin Greenan <kmgreen2@gmail.com>
2013-12-04 21:24:29 -08:00
Jim Plank
bc2f7c1c36
Revision 1.01.
2013-11-12 13:06:53 -05:00
Jim Plank
07b0399e0c
Lazy table bug. Thanks, Kevin.
2013-11-12 12:59:36 -05:00
Jim Plank
7bb3797a50
Added SPLIT SSE STDMAP for w=128
2013-11-08 23:21:22 -05:00
Jim Plank
10b7d76532
Added headers to the include files, and gf_size() to the documentation.
2013-10-09 11:35:06 -04:00
Jim Plank
b0e2ae07ab
Put headers on the C files.
2013-10-09 11:00:24 -04:00
Jim Plank
110523d6f3
GF-Complete Release 1.0.
...
Please see the user's manual for details.
2013-10-09 10:36:37 -04:00
Ethan L. Miller
79a46d18b6
Optimized version of GF(2^64) multiply using Intel SIMD carry-free multiply.
2013-09-19 15:57:07 -07:00
Jim Plank
b36cada557
Man, that was an idiotic bug in division for w=16. I had d_antilog pointing
...
to the log table rather than the antilog table. Not unrelatedly, the unit
tester is now testing division.
2013-04-09 16:29:46 -04:00
Jim Plank
a351a6501b
Fixed bug with logtable division.
2013-04-08 11:38:56 -04:00
Jim Plank
345a4de171
See the last commit. I forgot to do commit -a.
2013-04-01 16:26:10 -04:00
Jim Plank
5c214745b6
Added inline functions for w=4, 8 and 16. Plus gf_inline_time.c to time
...
the inline functions. I see that gf_unit at present is not testing division --
that's a problem which we need to fix.
Multiplication for w=4 & 8 is a little less than 2x faster when inlined.
w=16 is quite a bit slower. If I had the patience, I'd test logzero inlined,
but I don't really have the patience at present.
2013-04-01 16:24:25 -04:00
Jim Plank
d05a931f04
Added LOG_ZERO_EXT and modified LOG_ZERO. The new LOG_ZERO doesn't have an entry
...
for two times the sentinel, because it's only needed for single multiplication.
I haven't fixed w=16 yet with this. Monday maybe? Timings on our lab machines
show no big difference. We'd only expect a difference in single multiplies, and
it's in the noise really.
UNIX> gf_time 8 MDG 0 10240 10240 LOG - -
Seed: 0
Multiply: 0.231191 s Mops: 100.000 432.542 Mega-ops/s
Divide: 0.229992 s Mops: 100.000 434.797 Mega-ops/s
Region-Random: XOR: 0 0.095446 s MB: 100.000 1047.712 MB/s
Region-Random: XOR: 1 0.115485 s MB: 100.000 865.914 MB/s
UNIX> gf_time 8 MDG 0 10240 10240 LOG_ZERO - -
Seed: 0
Multiply: 0.228568 s Mops: 100.000 437.506 Mega-ops/s
Divide: 0.227718 s Mops: 100.000 439.140 Mega-ops/s
Region-Random: XOR: 0 0.085062 s MB: 100.000 1175.613 MB/s
Region-Random: XOR: 1 0.095891 s MB: 100.000 1042.846 MB/s
UNIX> gf_time 8 MDG 0 10240 10240 LOG_ZERO_EXT - -
Seed: 0
Multiply: 0.228960 s Mops: 100.000 436.758 Mega-ops/s
Divide: 0.227758 s Mops: 100.000 439.063 Mega-ops/s
Region-Random: XOR: 0 0.085180 s MB: 100.000 1173.981 MB/s
Region-Random: XOR: 1 0.095931 s MB: 100.000 1042.421 MB/s
UNIX>
2013-03-08 16:31:42 -05:00
Jim Plank
47896e9ddc
Killing all of these junk files. They should not be in the repository.
2013-03-04 17:06:43 -05:00
Jim Plank
4d5f453827
Killing junk.txt
2013-03-04 17:05:18 -05:00
Jim Plank
b2d6666ed7
Added clm region multiplication for w=64. I should make this the default,
...
but I haven't yet. Speed is nice and fast, but not as fast ast SPLIT 64 4 SSE,ALTMAP:
UNIX> gf_time 64 R 0 10240 10240 -
Seed: 0
Region-Random: XOR: 0 0.661736 s MB: 100.000 151.118 MB/s
Region-Random: XOR: 1 0.659374 s MB: 100.000 151.659 MB/s
Region-By-Zero: XOR: 0 0.002128 s MB: 100.000 46989.738 MB/s
Region-By-Zero: XOR: 1 0.000248 s MB: 100.000 402911.047 MB/s
Region-By-One: XOR: 0 0.002168 s MB: 100.000 46131.808 MB/s
Region-By-One: XOR: 1 0.003946 s MB: 100.000 25344.758 MB/s
Region-By-Two: XOR: 0 0.377993 s MB: 100.000 264.555 MB/s
Region-By-Two: XOR: 1 0.382269 s MB: 100.000 261.596 MB/s
UNIX> gf_time 64 R 0 10240 10240 SPLIT 64 4 SSE,ALTMAP -
Seed: 0
Region-Random: XOR: 0 0.050045 s MB: 100.000 1998.211 MB/s
Region-Random: XOR: 1 0.049198 s MB: 100.000 2032.597 MB/s
Region-By-Zero: XOR: 0 0.002100 s MB: 100.000 47619.255 MB/s
Region-By-Zero: XOR: 1 0.000260 s MB: 100.000 384445.830 MB/s
Region-By-One: XOR: 0 0.002139 s MB: 100.000 46743.609 MB/s
Region-By-One: XOR: 1 0.003928 s MB: 100.000 25457.053 MB/s
Region-By-Two: XOR: 0 0.048678 s MB: 100.000 2054.330 MB/s
Region-By-Two: XOR: 1 0.048800 s MB: 100.000 2049.161 MB/s
UNIX> gf_time 64 R 0 10240 10240 SHIFT SSE -
Seed: 0
Region-Random: XOR: 0 0.108492 s MB: 100.000 921.724 MB/s
Region-Random: XOR: 1 0.110783 s MB: 100.000 902.663 MB/s
Region-By-Zero: XOR: 0 0.002077 s MB: 100.000 48155.040 MB/s
Region-By-Zero: XOR: 1 0.000254 s MB: 100.000 393461.914 MB/s
Region-By-One: XOR: 0 0.002088 s MB: 100.000 47902.056 MB/s
Region-By-One: XOR: 1 0.003885 s MB: 100.000 25739.822 MB/s
Region-By-Two: XOR: 0 0.107280 s MB: 100.000 932.142 MB/s
Region-By-Two: XOR: 1 0.110782 s MB: 100.000 902.676 MB/s
UNIX>
2013-03-04 17:02:24 -05:00
Ethan Miller
5c719db2b9
Merged in jimplank/gf-complete-unit-bytwo (pull request #1 )
...
Unit & w=64 bytwo. Made a few more changes.
2013-03-04 10:20:44 -08:00
Jim Plank
82a365dae1
Getting the defaults and flags working with carryless multiply. Regions next!
2013-03-01 17:23:38 -05:00
Jim Plank
ed9bc0f6c4
Unit & w=64 bytwo.
2013-03-01 15:42:29 -05:00
Ethan L. Miller
cf6a5dfa29
Basic 64-bit multiply using intrinsics working.
2013-02-15 15:41:46 -08:00
Ethan L. Miller
6219bb9867
Adding support for carry-less multiply.
2013-02-15 11:58:45 -08:00
elm
e6fd0a544b
Updated the way we track CPU features. Much more stable now.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@100 36f187d4-5712-4624-889c-152d48957efa
2013-02-15 18:11:22 +00:00
plank
327f637b83
Wordsmithing.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@99 36f187d4-5712-4624-889c-152d48957efa
2013-02-13 01:32:10 +00:00
plank
64386c048b
Added whats_my_sse.c, so users can test the sse crap themselves.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@98 36f187d4-5712-4624-889c-152d48957efa
2013-02-13 01:10:11 +00:00
plank
61d75c53f1
Bugs with SSE4. Shit.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@97 36f187d4-5712-4624-889c-152d48957efa
2013-02-10 21:04:32 +00:00
plank
92a5441ea4
This holds the files that should be included as part of the release.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@96 36f187d4-5712-4624-889c-152d48957efa
2013-02-10 19:57:20 +00:00
plank
d0f2d55cce
Putting on the finishing touches.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@95 36f187d4-5712-4624-889c-152d48957efa
2013-02-10 19:56:15 +00:00
plank
4e5e5cd17d
Making it work with the maunal.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@94 36f187d4-5712-4624-889c-152d48957efa
2013-02-09 17:45:44 +00:00
plank
bd685c8d64
Changed the defaults.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@93 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 23:22:19 +00:00
plank
95a7d21c8a
Changed the defaults for w=32.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@92 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 22:50:22 +00:00
plank
a8fc92d1d4
Changed defaults for w = 8 and w = 16
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@91 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 21:15:11 +00:00
plank
c975077849
Changed the default method for w=4 to use SSE if it is there.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@90 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 16:44:30 +00:00
plank
ac9ec2ab00
Builds a library now.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@89 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 15:04:11 +00:00
plank
e96c0e2801
Renaming gf.h to gf_complete.h
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@88 36f187d4-5712-4624-889c-152d48957efa
2013-02-08 01:20:24 +00:00
plank
b860290867
Blah.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@87 36f187d4-5712-4624-889c-152d48957efa
2013-02-07 19:03:41 +00:00
plank
f58a7de9d0
w128: bytwo-b, group region, split 128 4. No sse for anything.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@86 36f187d4-5712-4624-889c-152d48957efa
2013-02-06 22:39:09 +00:00
plank
45fa1443d2
SSE SPLIT ALTMAP w=64. A bitch.
...
git-svn-id: svn://mamba.eecs.utk.edu/home/plank/svn/Galois-Library@85 36f187d4-5712-4624-889c-152d48957efa
2013-02-06 19:33:31 +00:00