Issue #14431 has been reported by normalperson (Eric Wong).

----------------------------------------
Misc #14431: [PATCH] thread.c: remove FP from time calculations
https://bugs.ruby-lang.org/issues/14431

* Author: normalperson (Eric Wong)
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Pretty straightforward.  Will commit soonish.

In the future, I may move towards timespec instead of timeval
since it's more accurate and might result in fewer conversions
with clock_gettime being favored.
```
thread.c: remove FP from time calculations

Floating-point can lead to inaccurate conversions and timeouts,
in turn causing wasted CPU cycles.  Use timeval_* functions to
perform fixed-point arithmetic, instead.  This even results in
a small code reduction.
```

Also available via git (generated with "git request-pull"):

The following changes since commit 7fdb4099cd6889d29fb07f9b41dbd788d1164031:

  array.c: remove rb_ary_frozen_p / Array#frozen? (2018-02-01 09:20:38 +0000)

are available in the Git repository at:

  git://80x24.org/ruby.git thread-nofp

for you to fetch changes up to 0b7661ad2e339bf2b95be0ed92d3674870c964d4:

  thread.c: avoid FP in C-API time calculations (2018-02-02 05:16:05 +0000)

----------------------------------------------------------------
Eric Wong (4):
      thread.c (rb_thread_terminate_all): eliminate double2timeval call
      thread.c: extract timeval_sub from timeval_update_expire
      thread.c: avoid FP for Thread#join
      thread.c: avoid FP in C-API time calculations

 thread.c | 188 +++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 91 insertions(+), 97 deletions(-)

And broken out patches:

   https://80x24.org/spew/20180202051837.14192-2-e / 80x24.org/raw
   https://80x24.org/spew/20180202051837.14192-3-e / 80x24.org/raw
   https://80x24.org/spew/20180202051837.14192-4-e / 80x24.org/raw
   https://80x24.org/spew/20180202051837.14192-5-e / 80x24.org/raw


---Files--------------------------------
0001-thread.c-remove-FP-from-time-calculations.patch (10.5 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>