Skip to content

Commit facdbe2

Browse files
committed
Make BigDecimal object embedded
Fix: #293 BigDecimal is a very good fit for embedded objects, as most of them are small, and they're all immutable, so they don't need any resizing. In most case it results in smaller objects, but also reduces pointer chasing as well as make these objects faster to free for the GC. master: ```ruby >> ObjectSpace.memsize_of(BigDecimal("422343434234234234234234234234423")) => 92 >> ObjectSpace.memsize_of(BigDecimal("4223434342342342342342342342344232342423423")) => 96 ``` This branch: ```ruby >> ObjectSpace.memsize_of(BigDecimal("422343434234234234234234234234423")) => 80 >> ObjectSpace.memsize_of(BigDecimal("4223434342342342342342342342344232342423423")) => 160 ```
1 parent e64c502 commit facdbe2

4 files changed

Lines changed: 110 additions & 180 deletions

File tree

Gemfile

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@ source 'https://rubygems.org'
22

33
gemspec
44

5-
gem "benchmark_driver"
5+
# gem "benchmark_driver"
66
gem "fiddle", platform: :ruby
77
gem "rake", ">= 12.3.3"
88
gem "rake-compiler", ">= 0.9"
9-
gem "minitest", "< 5.0.0"
109
gem "irb"
11-
gem "test-unit"
10+
gem "test-unit", "3.7.7"
1211
gem "test-unit-ruby-core"
1312

1413
group :sig do

0 commit comments

Comments
 (0)