kortschak
6acfdcc5d6
Use concrete value for quad.Quad
...
Comparison of -short benchmarks in cayley.
$ benchcmp pointer.bench concrete.bench
benchmark old ns/op new ns/op delta
BenchmarkNamePredicate 1673276 1655093 -1.09%
BenchmarkLargeSetsNoIntersection 318985907 261499984 -18.02%
BenchmarkNetAndSpeed 104403743 41516981 -60.23%
BenchmarkKeanuAndNet 17309258 16857513 -2.61%
BenchmarkKeanuAndSpeed 20159161 19282833 -4.35%
Comparison of pathological cases are not so happy.
benchmark old ns/op new ns/op delta
BenchmarkVeryLargeSetsSmallIntersection 55269775527 246084606672 +345.24%
BenchmarkHelplessContainsChecker 23436501319 24308906949 +3.72%
Profiling the worst case:
Pointer:
Total: 6121 samples
1973 32.2% 32.2% 1973 32.2% runtime.findfunc
773 12.6% 44.9% 773 12.6% readvarint
510 8.3% 53.2% 511 8.3% step
409 6.7% 59.9% 410 6.7% runtime.gentraceback
390 6.4% 66.2% 391 6.4% pcvalue
215 3.5% 69.8% 215 3.5% runtime.funcdata
181 3.0% 72.7% 181 3.0% checkframecopy
118 1.9% 74.6% 119 1.9% runtime.funcspdelta
96 1.6% 76.2% 96 1.6% runtime.topofstack
76 1.2% 77.5% 76 1.2% scanblock
Concrete:
Total: 25027 samples
9437 37.7% 37.7% 9437 37.7% runtime.findfunc
3853 15.4% 53.1% 3853 15.4% readvarint
2366 9.5% 62.6% 2366 9.5% step
2186 8.7% 71.3% 2186 8.7% runtime.gentraceback
1816 7.3% 78.5% 1816 7.3% pcvalue
1016 4.1% 82.6% 1016 4.1% runtime.funcdata
859 3.4% 86.0% 859 3.4% checkframecopy
506 2.0% 88.1% 506 2.0% runtime.funcspdelta
410 1.6% 89.7% 410 1.6% runtime.topofstack
303 1.2% 90.9% 303 1.2% runtime.newstack
2014-08-05 23:25:02 +09:30
kortschak
401c58426f
Create quads hierarchy
...
* Move nquads into quad.
* Create cquads simplified parser in quad.
* Move Triple (renamed Quad) to quad.
Also made sure mongo actually implements BulkLoader.
2014-07-28 21:36:22 +09:30
kortschak
0e0e382d2b
Use error returns and interface type for parsing
...
Fixes issue #72
This change simplifies interactions with parsing N-Quads and makes
reading datasets more robust. Changes made while here also improve
performance:
benchmark old ns/op new ns/op delta
BenchmarkParser 1058 667 -36.96%
We still use string concatenation which I'm not wildly happy about, but
I think this can be left for a later change.
Initial changes towards idiomatic error handling have been made. More
significant changes are needed, but these have subtle design implication
and need to be thought about more.
30kmoviesdata.nt.gz has been altered to properly escape double quotes.
This was done mechanically and with manual curation to pick up
straglers.
2014-07-22 20:34:37 +09:30
Jeremy Jay
923679b36c
comment tweaks
2014-07-18 14:54:29 -04:00
Jeremy Jay
5731ca7b42
6 of one, half-dozen of the other
2014-07-18 14:19:02 -04:00
Jeremy Jay
f9c60a5f30
update names per discussion at google/cayley#38
2014-07-18 11:17:57 -04:00
Jeremy Jay
d808d9347c
move to registry interface for backends
2014-07-16 16:49:55 -04:00
Alex Peters
4d34ea50cc
Fix typos and minor cleanup
2014-07-10 13:19:30 +02:00
kortschak
d87e227ff3
Rename TSVal
2014-07-02 12:13:15 +09:30
kortschak
b89d4f392c
Reduce TripleStore interface names
2014-07-02 11:40:33 +09:30
kortschak
1768e593a8
Move iterators into separate package
...
Also reduce API exposure and use standard library more - and fix bugs I
previously introduces in mongo.
2014-07-01 09:21:32 +09:30
kortschak
0a03cec497
Replace string type with graph.Direction
...
This conversion is not complete as there are still uses of string
directions via the Direction.String method in leveldb.
2014-06-30 12:41:03 +09:30
kortschak
e0df752618
Reorganize to go get will work
...
This makes almost no changes to source, but touches every almost file.
Also fixes error in gremlin test code.
2014-06-26 09:04:17 +09:30