File tree Expand file tree Collapse file tree 3 files changed +28
-26
lines changed
lib/redis_client/ruby_connection Expand file tree Collapse file tree 3 files changed +28
-26
lines changed Original file line number Diff line number Diff line change @@ -7,53 +7,53 @@ redis-server: `Redis server v=7.0.12 sha=00000000:0 malloc=libc bits=64 build=a1
7
7
8
8
```
9
9
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
10
- hiredis: 5369.2 i/s
11
- ruby: 3095.8 i/s - 1.73x slower
10
+ hiredis: 5470.4 i/s
11
+ ruby: 3246.7 i/s - 1.68x slower
12
12
13
13
```
14
14
15
15
### large string x 100
16
16
17
17
```
18
18
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
19
- hiredis: 303.9 i/s
20
- ruby: 217.9 i/s - 1.39x slower
19
+ hiredis: 304.4 i/s
20
+ ruby: 230.2 i/s - 1.32x slower
21
21
22
22
```
23
23
24
24
### small list x 100
25
25
26
26
```
27
27
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
28
- hiredis: 2706.0 i/s
29
- ruby: 1325 .4 i/s - 2.04x slower
28
+ hiredis: 2643.4 i/s
29
+ ruby: 1312 .4 i/s - 2.01x slower
30
30
31
31
```
32
32
33
33
### large list
34
34
35
35
```
36
36
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
37
- hiredis: 6827.5 i/s
38
- ruby: 1755 .0 i/s - 3.89x slower
37
+ hiredis: 6761.3 i/s
38
+ ruby: 1796 .0 i/s - 3.76x slower
39
39
40
40
```
41
41
42
42
### small hash x 100
43
43
44
44
```
45
45
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
46
- hiredis: 3453 .2 i/s
47
- ruby: 1359.5 i/s - 2.54x slower
46
+ hiredis: 3293 .2 i/s
47
+ ruby: 1435.0 i/s - 2.29x slower
48
48
49
49
```
50
50
51
51
### large hash
52
52
53
53
```
54
54
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
55
- hiredis: 1655.5 i/s
56
- ruby: 1666.5 i/s - same-ish: difference falls within error
55
+ hiredis: 1765.3 i/s
56
+ ruby: 1782.7 i/s - same-ish: difference falls within error
57
57
58
58
```
59
59
Original file line number Diff line number Diff line change @@ -7,53 +7,53 @@ redis-server: `Redis server v=7.0.12 sha=00000000:0 malloc=libc bits=64 build=a1
7
7
8
8
```
9
9
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
10
- hiredis: 6795.5 i/s
11
- ruby: 5696.7 i/s - 1.19x slower
10
+ hiredis: 6810.9 i/s
11
+ ruby: 5613.1 i/s - 1.21x slower
12
12
13
13
```
14
14
15
15
### large string x 100
16
16
17
17
```
18
18
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
19
- hiredis: 291.0 i/s
20
- ruby: 339 .3 i/s - same-ish: difference falls within error
19
+ hiredis: 312.1 i/s
20
+ ruby: 316 .3 i/s - same-ish: difference falls within error
21
21
22
22
```
23
23
24
24
### small list x 100
25
25
26
26
```
27
27
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
28
- hiredis: 3661 .1 i/s
29
- ruby: 2351.8 i/s - 1.56x slower
28
+ hiredis: 3644 .1 i/s
29
+ ruby: 2474.0 i/s - 1.47x slower
30
30
31
31
```
32
32
33
33
### large list
34
34
35
35
```
36
36
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
37
- hiredis: 6839.3 i/s
38
- ruby: 5330.8 i/s - 1.28x slower
37
+ hiredis: 6884.4 i/s
38
+ ruby: 5473.2 i/s - 1.26x slower
39
39
40
40
```
41
41
42
42
### small hash x 100
43
43
44
44
```
45
45
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
46
- hiredis: 3966 .9 i/s
47
- ruby: 3243.4 i/s - 1.22x slower
46
+ hiredis: 4033 .9 i/s
47
+ ruby: 3236.3 i/s - 1.25x slower
48
48
49
49
```
50
50
51
51
### large hash
52
52
53
53
```
54
54
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) +YJIT [arm64-darwin23]
55
- hiredis: 4609 .7 i/s
56
- ruby: 4612.8 i/s - same-ish: difference falls within error
55
+ hiredis: 4753 .7 i/s
56
+ ruby: 4637.7 i/s - same-ish: difference falls within error
57
57
58
58
```
59
59
Original file line number Diff line number Diff line change @@ -82,8 +82,10 @@ def write(string)
82
82
end
83
83
84
84
def getbyte
85
- ensure_remaining ( 1 )
86
- byte = @buffer . getbyte ( @offset )
85
+ unless byte = @buffer . getbyte ( @offset )
86
+ ensure_remaining ( 1 )
87
+ byte = @buffer . getbyte ( @offset )
88
+ end
87
89
@offset += 1
88
90
byte
89
91
end
You can’t perform that action at this time.
0 commit comments