Abstract
Ryū Printf is a new algorithm to convert floating-point numbers to decimal strings according to the printf %f, %e, and %g formats: %f generates ‘full’ output (integer part of the input, dot, configurable number of digits), %e generates scientific output (one leading digit, dot, configurable number of digits, exponent), and %g generates the shorter of the two. Ryū Printf is based on the Ryū algorithm, which converts binary floating-point numbers to the shortest equivalent decimal floating-point representation. We provide quantitative evidence that Ryū Printf is between 3.8 and 55 times faster than existing printf implementations.
Furthermore, we show that both Ryū and Ryū Printf generalize to arbitrary number bases. This finding implies the existence of a fast algorithm to convert from base-10 to base-2, as long as the maximum precision of the input is known a priori.
Publisher
Association for Computing Machinery (ACM)
Subject
Safety, Risk, Reliability and Quality,Software
Reference17 articles.
1. Ryū: fast float-to-string conversion
2. Ulf Adams. 2019. 10.5281/zenodo.3366212 Ulf Adams. 2019. 10.5281/zenodo.3366212
3. Printing floating-point numbers: a faster, always correct method
4. Anonymous. 2018. printf format string. https://en.wikipedia.org/wiki/Printf_format_string Anonymous. 2018. printf format string. https://en.wikipedia.org/wiki/Printf_format_string
Cited by
4 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. libcdict: fast dictionaries in C;Journal of Open Source Software;2023-12-12
2. Exact Short Products From Truncated Multipliers;The Computer Journal;2023-10-11
3. Fast number parsing without fallback;Software: Practice and Experience;2023-03-04
4. Number parsing at a gigabyte per second;Software: Practice and Experience;2021-05-11