Created
April 27, 2018 07:40
-
-
Save nirui/5be8ccdb9dfaf63f2ae31e49a608273c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"fmt" | |
"time" | |
) | |
type s struct { | |
s []sData | |
} | |
type sData struct { | |
NextIndex int | |
} | |
type sInterface struct { | |
s []interface{} | |
} | |
const ( | |
testLevel = 1000000 | |
testTimes = 300 | |
) | |
func buildS() *s { | |
root := &s{ | |
s: make([]sData, testLevel), | |
} | |
half := testLevel / 2 | |
for k := range root.s { | |
if k >= half { | |
root.s[k] = sData{ | |
NextIndex: testLevel - k, | |
} | |
continue | |
} | |
root.s[k] = sData{ | |
NextIndex: testLevel - (k + 1), | |
} | |
} | |
return root | |
} | |
func traverseS(t *s) int { | |
levels := 0 | |
nextIndex := t.s[0].NextIndex | |
for { | |
if t.s[nextIndex].NextIndex == nextIndex { | |
return levels | |
} | |
nextIndex = t.s[nextIndex].NextIndex | |
levels++ | |
} | |
} | |
func buildSInterface() *sInterface { | |
root := &sInterface{ | |
s: make([]interface{}, testLevel), | |
} | |
half := testLevel / 2 | |
for k := range root.s { | |
if k >= half { | |
root.s[k] = sData{ | |
NextIndex: testLevel - k, | |
} | |
continue | |
} | |
root.s[k] = sData{ | |
NextIndex: testLevel - (k + 1), | |
} | |
} | |
return root | |
} | |
func traverseSInterface(t *sInterface) int { | |
levels := 0 | |
nextIndex := t.s[0].(sData).NextIndex | |
for { | |
if t.s[nextIndex].(sData).NextIndex == nextIndex { | |
return levels | |
} | |
nextIndex = t.s[nextIndex].(sData).NextIndex | |
levels++ | |
} | |
} | |
func main() { | |
fmt.Println("Building") | |
sss := buildS() | |
ssss := buildSInterface() | |
fmt.Println("Traversing") | |
for i := 0; i < testTimes; i++ { | |
start := time.Now() | |
sCount := traverseS(sss) | |
sEnd := time.Since(start) | |
start = time.Now() | |
mCount := traverseSInterface(ssss) | |
mEnd := time.Since(start) | |
if sCount != mCount { | |
panic("Count are different") | |
} | |
fmt.Printf("Traverse took: Slice %s vs Slice (of Interfaces) %s\r\n", sEnd, mEnd) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Building
Traversing
Traverse took: Slice 3.997369ms vs Slice (of Interfaces) 8.446689ms
Traverse took: Slice 3.314099ms vs Slice (of Interfaces) 7.980211ms
Traverse took: Slice 3.659122ms vs Slice (of Interfaces) 8.334732ms
Traverse took: Slice 3.572307ms vs Slice (of Interfaces) 8.01185ms
Traverse took: Slice 3.333306ms vs Slice (of Interfaces) 7.516526ms
Traverse took: Slice 4.173093ms vs Slice (of Interfaces) 7.769635ms
Traverse took: Slice 3.688456ms vs Slice (of Interfaces) 7.761185ms
Traverse took: Slice 3.570422ms vs Slice (of Interfaces) 7.498996ms
Traverse took: Slice 3.949108ms vs Slice (of Interfaces) 8.154049ms
Traverse took: Slice 3.539063ms vs Slice (of Interfaces) 7.819294ms
Traverse took: Slice 3.270098ms vs Slice (of Interfaces) 8.58393ms
Traverse took: Slice 3.612467ms vs Slice (of Interfaces) 7.512056ms
Traverse took: Slice 3.869976ms vs Slice (of Interfaces) 7.565137ms
Traverse took: Slice 3.299223ms vs Slice (of Interfaces) 8.749667ms
Traverse took: Slice 3.556314ms vs Slice (of Interfaces) 7.909461ms
Traverse took: Slice 3.380031ms vs Slice (of Interfaces) 7.934603ms
Traverse took: Slice 3.318569ms vs Slice (of Interfaces) 8.840182ms
Traverse took: Slice 3.212199ms vs Slice (of Interfaces) 8.44648ms
Traverse took: Slice 3.393999ms vs Slice (of Interfaces) 7.58134ms
Traverse took: Slice 3.607438ms vs Slice (of Interfaces) 8.899269ms
Traverse took: Slice 3.278899ms vs Slice (of Interfaces) 8.368676ms
Traverse took: Slice 3.340221ms vs Slice (of Interfaces) 7.582387ms
Traverse took: Slice 3.277502ms vs Slice (of Interfaces) 9.047894ms
Traverse took: Slice 3.309001ms vs Slice (of Interfaces) 8.115496ms
Traverse took: Slice 3.660868ms vs Slice (of Interfaces) 7.529167ms
Traverse took: Slice 3.298524ms vs Slice (of Interfaces) 9.225085ms
Traverse took: Slice 3.366411ms vs Slice (of Interfaces) 8.136379ms
Traverse took: Slice 3.375142ms vs Slice (of Interfaces) 8.09133ms
Traverse took: Slice 3.301527ms vs Slice (of Interfaces) 8.84535ms
Traverse took: Slice 3.361103ms vs Slice (of Interfaces) 8.330611ms
Traverse took: Slice 3.333656ms vs Slice (of Interfaces) 7.675837ms
Traverse took: Slice 3.931018ms vs Slice (of Interfaces) 8.775927ms
Traverse took: Slice 3.392393ms vs Slice (of Interfaces) 8.359805ms
Traverse took: Slice 3.387085ms vs Slice (of Interfaces) 7.802811ms
Traverse took: Slice 3.616867ms vs Slice (of Interfaces) 11.621104ms
Traverse took: Slice 3.998557ms vs Slice (of Interfaces) 11.517457ms
Traverse took: Slice 3.843995ms vs Slice (of Interfaces) 9.740663ms
Traverse took: Slice 3.986474ms vs Slice (of Interfaces) 7.671367ms
Traverse took: Slice 5.084259ms vs Slice (of Interfaces) 7.637074ms
Traverse took: Slice 3.499112ms vs Slice (of Interfaces) 8.93433ms
Traverse took: Slice 3.293636ms vs Slice (of Interfaces) 7.88341ms
Traverse took: Slice 3.346436ms vs Slice (of Interfaces) 8.954305ms
Traverse took: Slice 3.332119ms vs Slice (of Interfaces) 8.884323ms
Traverse took: Slice 3.552402ms vs Slice (of Interfaces) 8.132678ms
Traverse took: Slice 3.34483ms vs Slice (of Interfaces) 7.94487ms
Traverse took: Slice 3.235946ms vs Slice (of Interfaces) 8.733743ms
Traverse took: Slice 3.259553ms vs Slice (of Interfaces) 8.133376ms
Traverse took: Slice 3.283578ms vs Slice (of Interfaces) 7.495155ms
Traverse took: Slice 3.2247ms vs Slice (of Interfaces) 9.040491ms
Traverse took: Slice 3.287349ms vs Slice (of Interfaces) 7.879848ms
Traverse took: Slice 3.432552ms vs Slice (of Interfaces) 7.895283ms
Traverse took: Slice 3.81948ms vs Slice (of Interfaces) 10.458365ms
Traverse took: Slice 4.133143ms vs Slice (of Interfaces) 11.262742ms
Traverse took: Slice 4.005611ms vs Slice (of Interfaces) 7.565137ms
Traverse took: Slice 3.279667ms vs Slice (of Interfaces) 7.794639ms
Traverse took: Slice 3.527259ms vs Slice (of Interfaces) 8.434467ms
Traverse took: Slice 3.408107ms vs Slice (of Interfaces) 8.243727ms
Traverse took: Slice 3.363897ms vs Slice (of Interfaces) 7.765235ms
Traverse took: Slice 3.716881ms vs Slice (of Interfaces) 8.715793ms
Traverse took: Slice 3.554079ms vs Slice (of Interfaces) 8.129115ms
Traverse took: Slice 3.419492ms vs Slice (of Interfaces) 7.533638ms
Traverse took: Slice 4.212066ms vs Slice (of Interfaces) 7.889834ms
Traverse took: Slice 3.868789ms vs Slice (of Interfaces) 9.571155ms
Traverse took: Slice 3.781207ms vs Slice (of Interfaces) 8.924692ms
Traverse took: Slice 3.319756ms vs Slice (of Interfaces) 8.247289ms
Traverse took: Slice 3.490731ms vs Slice (of Interfaces) 7.596845ms
Traverse took: Slice 3.313401ms vs Slice (of Interfaces) 8.976795ms
Traverse took: Slice 3.295312ms vs Slice (of Interfaces) 7.956884ms
Traverse took: Slice 3.621267ms vs Slice (of Interfaces) 7.569328ms
Traverse took: Slice 3.30502ms vs Slice (of Interfaces) 9.079672ms
Traverse took: Slice 3.25166ms vs Slice (of Interfaces) 7.946477ms
Traverse took: Slice 3.334004ms vs Slice (of Interfaces) 7.853028ms
Traverse took: Slice 3.375002ms vs Slice (of Interfaces) 8.661526ms
Traverse took: Slice 3.359986ms vs Slice (of Interfaces) 8.245473ms
Traverse took: Slice 3.252638ms vs Slice (of Interfaces) 7.583645ms
Traverse took: Slice 3.458534ms vs Slice (of Interfaces) 8.820836ms
Traverse took: Slice 3.244885ms vs Slice (of Interfaces) 8.393958ms
Traverse took: Slice 3.347135ms vs Slice (of Interfaces) 7.575264ms
Traverse took: Slice 3.295731ms vs Slice (of Interfaces) 8.837179ms
Traverse took: Slice 3.286162ms vs Slice (of Interfaces) 8.137427ms
Traverse took: Slice 3.354608ms vs Slice (of Interfaces) 7.693996ms
Traverse took: Slice 3.550446ms vs Slice (of Interfaces) 8.535739ms
Traverse took: Slice 3.525024ms vs Slice (of Interfaces) 7.697279ms
Traverse took: Slice 3.316055ms vs Slice (of Interfaces) 7.90562ms
Traverse took: Slice 3.896936ms vs Slice (of Interfaces) 7.767331ms
Traverse took: Slice 3.53585ms vs Slice (of Interfaces) 7.98475ms
Traverse took: Slice 3.428642ms vs Slice (of Interfaces) 7.524768ms
Traverse took: Slice 4.119873ms vs Slice (of Interfaces) 7.561225ms
Traverse took: Slice 3.527678ms vs Slice (of Interfaces) 7.547537ms
Traverse took: Slice 3.445822ms vs Slice (of Interfaces) 7.870558ms
Traverse took: Slice 3.832681ms vs Slice (of Interfaces) 7.883758ms
Traverse took: Slice 3.447778ms vs Slice (of Interfaces) 7.505142ms
Traverse took: Slice 3.24719ms vs Slice (of Interfaces) 8.57052ms
Traverse took: Slice 3.536967ms vs Slice (of Interfaces) 7.745471ms
Traverse took: Slice 3.287838ms vs Slice (of Interfaces) 8.024701ms
Traverse took: Slice 3.240415ms vs Slice (of Interfaces) 8.69484ms
Traverse took: Slice 3.368856ms vs Slice (of Interfaces) 7.824322ms
Traverse took: Slice 3.233431ms vs Slice (of Interfaces) 7.820062ms
Traverse took: Slice 3.241533ms vs Slice (of Interfaces) 8.720892ms
Traverse took: Slice 3.387434ms vs Slice (of Interfaces) 8.280814ms
Traverse took: Slice 3.310258ms vs Slice (of Interfaces) 7.636377ms
Traverse took: Slice 3.430317ms vs Slice (of Interfaces) 8.83697ms
Traverse took: Slice 3.300899ms vs Slice (of Interfaces) 7.854425ms
Traverse took: Slice 3.527189ms vs Slice (of Interfaces) 8.10034ms
Traverse took: Slice 3.26933ms vs Slice (of Interfaces) 9.065355ms
Traverse took: Slice 3.352722ms vs Slice (of Interfaces) 10.017029ms
Traverse took: Slice 3.737625ms vs Slice (of Interfaces) 9.301772ms
Traverse took: Slice 4.079923ms vs Slice (of Interfaces) 9.846264ms
Traverse took: Slice 3.702843ms vs Slice (of Interfaces) 9.703158ms
Traverse took: Slice 3.751803ms vs Slice (of Interfaces) 9.977569ms
Traverse took: Slice 3.641591ms vs Slice (of Interfaces) 19.740232ms
Traverse took: Slice 7.997951ms vs Slice (of Interfaces) 9.720269ms
Traverse took: Slice 3.740558ms vs Slice (of Interfaces) 10.348573ms
Traverse took: Slice 3.8815ms vs Slice (of Interfaces) 14.085638ms
Traverse took: Slice 3.727358ms vs Slice (of Interfaces) 22.053138ms
Traverse took: Slice 3.715904ms vs Slice (of Interfaces) 8.506894ms
Traverse took: Slice 3.907551ms vs Slice (of Interfaces) 9.79514ms
Traverse took: Slice 3.701516ms vs Slice (of Interfaces) 8.703989ms
Traverse took: Slice 3.627693ms vs Slice (of Interfaces) 9.194215ms
Traverse took: Slice 3.475854ms vs Slice (of Interfaces) 8.082181ms
Traverse took: Slice 4.110584ms vs Slice (of Interfaces) 8.151674ms
Traverse took: Slice 3.497087ms vs Slice (of Interfaces) 8.272432ms
Traverse took: Slice 3.42005ms vs Slice (of Interfaces) 9.366655ms
Traverse took: Slice 4.55143ms vs Slice (of Interfaces) 8.831801ms
Traverse took: Slice 3.465797ms vs Slice (of Interfaces) 7.990408ms
Traverse took: Slice 3.268771ms vs Slice (of Interfaces) 10.131711ms
Traverse took: Slice 3.4915ms vs Slice (of Interfaces) 8.230946ms
Traverse took: Slice 3.989477ms vs Slice (of Interfaces) 7.77655ms
Traverse took: Slice 3.299922ms vs Slice (of Interfaces) 9.202316ms
Traverse took: Slice 3.307465ms vs Slice (of Interfaces) 7.901219ms
Traverse took: Slice 3.275267ms vs Slice (of Interfaces) 8.134424ms
Traverse took: Slice 6.953037ms vs Slice (of Interfaces) 11.732014ms
Traverse took: Slice 4.200611ms vs Slice (of Interfaces) 8.413724ms
Traverse took: Slice 3.607997ms vs Slice (of Interfaces) 7.625272ms
Traverse took: Slice 3.303204ms vs Slice (of Interfaces) 9.037069ms
Traverse took: Slice 3.397491ms vs Slice (of Interfaces) 7.990059ms
Traverse took: Slice 3.367808ms vs Slice (of Interfaces) 8.013247ms
Traverse took: Slice 3.230428ms vs Slice (of Interfaces) 8.636801ms
Traverse took: Slice 3.596542ms vs Slice (of Interfaces) 8.217676ms
Traverse took: Slice 3.409155ms vs Slice (of Interfaces) 7.935721ms
Traverse took: Slice 3.234549ms vs Slice (of Interfaces) 9.028199ms
Traverse took: Slice 3.244885ms vs Slice (of Interfaces) 8.344301ms
Traverse took: Slice 3.421657ms vs Slice (of Interfaces) 7.973436ms
Traverse took: Slice 3.320525ms vs Slice (of Interfaces) 10.941535ms
Traverse took: Slice 3.689154ms vs Slice (of Interfaces) 9.287873ms
Traverse took: Slice 3.481581ms vs Slice (of Interfaces) 7.660262ms
Traverse took: Slice 3.902523ms vs Slice (of Interfaces) 8.425947ms
Traverse took: Slice 3.405593ms vs Slice (of Interfaces) 8.226406ms
Traverse took: Slice 3.577266ms vs Slice (of Interfaces) 8.420709ms
Traverse took: Slice 3.641941ms vs Slice (of Interfaces) 8.348142ms
Traverse took: Slice 3.331211ms vs Slice (of Interfaces) 8.132328ms
Traverse took: Slice 3.314937ms vs Slice (of Interfaces) 9.150423ms
Traverse took: Slice 3.266816ms vs Slice (of Interfaces) 7.811681ms
Traverse took: Slice 3.576288ms vs Slice (of Interfaces) 8.084346ms
Traverse took: Slice 3.278549ms vs Slice (of Interfaces) 8.961848ms
Traverse took: Slice 3.316194ms vs Slice (of Interfaces) 8.094683ms
Traverse took: Slice 3.560085ms vs Slice (of Interfaces) 7.692669ms
Traverse took: Slice 3.314728ms vs Slice (of Interfaces) 9.022612ms
Traverse took: Slice 3.662334ms vs Slice (of Interfaces) 11.660216ms
Traverse took: Slice 4.044722ms vs Slice (of Interfaces) 11.18361ms
Traverse took: Slice 3.851049ms vs Slice (of Interfaces) 9.748206ms
Traverse took: Slice 3.345808ms vs Slice (of Interfaces) 7.753153ms
Traverse took: Slice 3.613933ms vs Slice (of Interfaces) 8.960661ms
Traverse took: Slice 3.326392ms vs Slice (of Interfaces) 8.490691ms
Traverse took: Slice 3.269121ms vs Slice (of Interfaces) 7.599639ms
Traverse took: Slice 3.678887ms vs Slice (of Interfaces) 9.541332ms
Traverse took: Slice 3.252428ms vs Slice (of Interfaces) 8.33103ms
Traverse took: Slice 3.577546ms vs Slice (of Interfaces) 7.984052ms
Traverse took: Slice 3.382405ms vs Slice (of Interfaces) 9.136315ms
Traverse took: Slice 3.410343ms vs Slice (of Interfaces) 7.938096ms
Traverse took: Slice 3.345249ms vs Slice (of Interfaces) 8.293385ms
Traverse took: Slice 3.650601ms vs Slice (of Interfaces) 8.335221ms
Traverse took: Slice 3.627972ms vs Slice (of Interfaces) 8.203987ms
Traverse took: Slice 3.301877ms vs Slice (of Interfaces) 7.817408ms
Traverse took: Slice 4.120292ms vs Slice (of Interfaces) 7.826697ms
Traverse took: Slice 3.495062ms vs Slice (of Interfaces) 8.306026ms
Traverse took: Slice 3.406221ms vs Slice (of Interfaces) 8.039647ms
Traverse took: Slice 3.828071ms vs Slice (of Interfaces) 8.08267ms
Traverse took: Slice 3.40273ms vs Slice (of Interfaces) 7.875447ms
Traverse took: Slice 3.663312ms vs Slice (of Interfaces) 7.980351ms
Traverse took: Slice 3.738463ms vs Slice (of Interfaces) 8.238977ms
Traverse took: Slice 3.388412ms vs Slice (of Interfaces) 7.9719ms
Traverse took: Slice 3.318849ms vs Slice (of Interfaces) 8.487687ms
Traverse took: Slice 3.477531ms vs Slice (of Interfaces) 8.021208ms
Traverse took: Slice 3.280505ms vs Slice (of Interfaces) 8.233251ms
Traverse took: Slice 3.24733ms vs Slice (of Interfaces) 8.537625ms
Traverse took: Slice 3.684404ms vs Slice (of Interfaces) 7.810843ms
Traverse took: Slice 3.354399ms vs Slice (of Interfaces) 8.087ms
Traverse took: Slice 3.42508ms vs Slice (of Interfaces) 8.636172ms
Traverse took: Slice 3.313889ms vs Slice (of Interfaces) 8.393819ms
Traverse took: Slice 3.235946ms vs Slice (of Interfaces) 7.471547ms
Traverse took: Slice 3.525863ms vs Slice (of Interfaces) 8.607328ms
Traverse took: Slice 3.222885ms vs Slice (of Interfaces) 8.133376ms
Traverse took: Slice 3.202142ms vs Slice (of Interfaces) 7.566952ms
Traverse took: Slice 3.289514ms vs Slice (of Interfaces) 8.955982ms
Traverse took: Slice 3.330093ms vs Slice (of Interfaces) 7.793592ms
Traverse took: Slice 3.28742ms vs Slice (of Interfaces) 7.819085ms
Traverse took: Slice 3.315286ms vs Slice (of Interfaces) 8.676402ms
Traverse took: Slice 3.612397ms vs Slice (of Interfaces) 7.734016ms
Traverse took: Slice 3.329046ms vs Slice (of Interfaces) 7.671367ms
Traverse took: Slice 3.393231ms vs Slice (of Interfaces) 8.665297ms
Traverse took: Slice 3.21206ms vs Slice (of Interfaces) 9.142322ms
Traverse took: Slice 3.304391ms vs Slice (of Interfaces) 7.772849ms
Traverse took: Slice 3.424311ms vs Slice (of Interfaces) 9.175357ms
Traverse took: Slice 3.332747ms vs Slice (of Interfaces) 7.952973ms
Traverse took: Slice 3.592353ms vs Slice (of Interfaces) 8.979309ms
Traverse took: Slice 3.82835ms vs Slice (of Interfaces) 8.834246ms
Traverse took: Slice 3.580968ms vs Slice (of Interfaces) 7.686873ms
Traverse took: Slice 3.335052ms vs Slice (of Interfaces) 8.177167ms
Traverse took: Slice 3.797131ms vs Slice (of Interfaces) 7.606274ms
Traverse took: Slice 3.609324ms vs Slice (of Interfaces) 7.913093ms
Traverse took: Slice 3.37137ms vs Slice (of Interfaces) 8.231155ms
Traverse took: Slice 3.874795ms vs Slice (of Interfaces) 7.600687ms
Traverse took: Slice 3.507703ms vs Slice (of Interfaces) 8.278928ms
Traverse took: Slice 3.293706ms vs Slice (of Interfaces) 9.137572ms
Traverse took: Slice 3.834286ms vs Slice (of Interfaces) 11.262951ms
Traverse took: Slice 3.924244ms vs Slice (of Interfaces) 11.079056ms
Traverse took: Slice 3.260391ms vs Slice (of Interfaces) 8.555434ms
Traverse took: Slice 3.869488ms vs Slice (of Interfaces) 7.684427ms
Traverse took: Slice 3.454203ms vs Slice (of Interfaces) 8.046282ms
Traverse took: Slice 3.281623ms vs Slice (of Interfaces) 8.03413ms
Traverse took: Slice 3.73504ms vs Slice (of Interfaces) 7.976719ms
Traverse took: Slice 3.594727ms vs Slice (of Interfaces) 7.711317ms
Traverse took: Slice 3.400844ms vs Slice (of Interfaces) 8.738212ms
Traverse took: Slice 3.400076ms vs Slice (of Interfaces) 8.192673ms
Traverse took: Slice 3.349719ms vs Slice (of Interfaces) 7.461002ms
Traverse took: Slice 3.356983ms vs Slice (of Interfaces) 8.736606ms
Traverse took: Slice 3.347065ms vs Slice (of Interfaces) 7.860362ms
Traverse took: Slice 3.364526ms vs Slice (of Interfaces) 8.932514ms
Traverse took: Slice 3.881501ms vs Slice (of Interfaces) 9.755539ms
Traverse took: Slice 3.567768ms vs Slice (of Interfaces) 8.144411ms
Traverse took: Slice 3.404616ms vs Slice (of Interfaces) 8.110608ms
Traverse took: Slice 3.848604ms vs Slice (of Interfaces) 8.843675ms
Traverse took: Slice 3.892675ms vs Slice (of Interfaces) 7.88774ms
Traverse took: Slice 3.233432ms vs Slice (of Interfaces) 8.322719ms
Traverse took: Slice 3.752291ms vs Slice (of Interfaces) 8.408904ms
Traverse took: Slice 3.489334ms vs Slice (of Interfaces) 8.405971ms
Traverse took: Slice 3.272613ms vs Slice (of Interfaces) 7.509682ms
Traverse took: Slice 4.111911ms vs Slice (of Interfaces) 8.56158ms
Traverse took: Slice 3.430527ms vs Slice (of Interfaces) 7.923639ms
Traverse took: Slice 3.460071ms vs Slice (of Interfaces) 8.083858ms
Traverse took: Slice 3.676861ms vs Slice (of Interfaces) 8.684783ms
Traverse took: Slice 3.306277ms vs Slice (of Interfaces) 7.542228ms
Traverse took: Slice 3.338056ms vs Slice (of Interfaces) 8.610331ms
Traverse took: Slice 3.414184ms vs Slice (of Interfaces) 7.824392ms
Traverse took: Slice 3.385968ms vs Slice (of Interfaces) 7.92734ms
Traverse took: Slice 3.595705ms vs Slice (of Interfaces) 8.972395ms
Traverse took: Slice 3.663452ms vs Slice (of Interfaces) 7.807421ms
Traverse took: Slice 3.312283ms vs Slice (of Interfaces) 7.746378ms
Traverse took: Slice 3.492966ms vs Slice (of Interfaces) 8.70832ms
Traverse took: Slice 3.271286ms vs Slice (of Interfaces) 8.135471ms
Traverse took: Slice 3.257387ms vs Slice (of Interfaces) 7.473084ms
Traverse took: Slice 3.389739ms vs Slice (of Interfaces) 8.61529ms
Traverse took: Slice 3.274568ms vs Slice (of Interfaces) 8.080994ms
Traverse took: Slice 3.16729ms vs Slice (of Interfaces) 7.630231ms
Traverse took: Slice 3.255851ms vs Slice (of Interfaces) 8.942502ms
Traverse took: Slice 3.330234ms vs Slice (of Interfaces) 7.728009ms
Traverse took: Slice 3.367179ms vs Slice (of Interfaces) 8.017088ms
Traverse took: Slice 3.31829ms vs Slice (of Interfaces) 8.603137ms
Traverse took: Slice 3.428711ms vs Slice (of Interfaces) 7.937398ms
Traverse took: Slice 3.08341ms vs Slice (of Interfaces) 7.651253ms
Traverse took: Slice 3.443867ms vs Slice (of Interfaces) 8.614312ms
Traverse took: Slice 3.228333ms vs Slice (of Interfaces) 8.225009ms
Traverse took: Slice 3.314169ms vs Slice (of Interfaces) 7.586718ms
Traverse took: Slice 3.244536ms vs Slice (of Interfaces) 8.928464ms
Traverse took: Slice 3.31368ms vs Slice (of Interfaces) 7.711666ms
Traverse took: Slice 3.365783ms vs Slice (of Interfaces) 7.988522ms
Traverse took: Slice 3.314379ms vs Slice (of Interfaces) 8.745407ms
Traverse took: Slice 3.363688ms vs Slice (of Interfaces) 7.748194ms
Traverse took: Slice 3.253476ms vs Slice (of Interfaces) 7.832843ms
Traverse took: Slice 3.581038ms vs Slice (of Interfaces) 8.230457ms
Traverse took: Slice 3.333376ms vs Slice (of Interfaces) 8.141617ms
Traverse took: Slice 3.326601ms vs Slice (of Interfaces) 7.405965ms
Traverse took: Slice 3.455111ms vs Slice (of Interfaces) 8.648186ms
Traverse took: Slice 3.293845ms vs Slice (of Interfaces) 7.78123ms
Traverse took: Slice 3.39351ms vs Slice (of Interfaces) 7.801065ms
Traverse took: Slice 3.479766ms vs Slice (of Interfaces) 8.621785ms
Traverse took: Slice 3.358799ms vs Slice (of Interfaces) 7.670809ms
Traverse took: Slice 3.31836ms vs Slice (of Interfaces) 7.750149ms
Traverse took: Slice 3.748311ms vs Slice (of Interfaces) 7.985729ms
Traverse took: Slice 3.55806ms vs Slice (of Interfaces) 8.135681ms
Traverse took: Slice 3.331072ms vs Slice (of Interfaces) 7.944591ms
Traverse took: Slice 3.911742ms vs Slice (of Interfaces) 7.758601ms
Traverse took: Slice 3.958606ms vs Slice (of Interfaces) 8.103134ms
Traverse took: Slice 3.37612ms vs Slice (of Interfaces) 8.531828ms
Traverse took: Slice 3.743142ms vs Slice (of Interfaces) 8.000046ms
Traverse took: Slice 3.412018ms vs Slice (of Interfaces) 8.961709ms
Traverse took: Slice 3.37591ms vs Slice (of Interfaces) 9.387399ms
Traverse took: Slice 3.481791ms vs Slice (of Interfaces) 11.04609ms
Traverse took: Slice 3.831074ms vs Slice (of Interfaces) 11.093164ms
Traverse took: Slice 4.300416ms vs Slice (of Interfaces) 10.825038ms
Traverse took: Slice 3.831563ms vs Slice (of Interfaces) 8.72152ms
Traverse took: Slice 3.342455ms vs Slice (of Interfaces) 9.184227ms
Traverse took: Slice 3.74887ms vs Slice (of Interfaces) 7.789401ms
Traverse took: Slice 3.447219ms vs Slice (of Interfaces) 7.649157ms
Traverse took: Slice 3.650182ms vs Slice (of Interfaces) 8.94299ms
Traverse took: Slice 3.261578ms vs Slice (of Interfaces) 7.894165ms
Traverse took: Slice 3.392812ms vs Slice (of Interfaces) 8.262305ms
Traverse took: Slice 3.66017ms vs Slice (of Interfaces) 9.952216ms
Traverse took: Slice 3.879964ms vs Slice (of Interfaces) 11.935675ms