lengjingzju

Results 12 comments of lengjingzju

The test results of [LJSON](https://github.com/lengjingzju/json) show that it is **faster** and more powerful than yyjson; And using the newly developed double-float number to string algorithm (**ldouble**), the speed is faster,...

1. Enabling **USING_U128_MUL** means using the GCC/Clang's 128-bits multiplication and division operations; otherwise, floating-point multiplication is used. -- The 128-bit method yields a more accurate value in the last digit....

4. With the follow patch, 1e-323 coming out as 1e-323. https://github.com/lengjingzju/json/commit/e748d2d2c1829c6b80196d3d4fdb0f63dab90f4c

@ibireme The three principles mentioned above are theoretically correct, but no double-to-string conversion algorithm can fully achieve them in practice. ![Image](https://github.com/user-attachments/assets/7cd3c182-d154-466e-a1a4-86233e747b44) A practical floating-point-to-string algorithm should meet the following principles:...

I understand. actually, for double-float number, "9.1999999999999999" and "9.2" are equal, but printing as "9.2" is better. with the patch https://github.com/lengjingzju/json/commit/086b84907cf6de05a26b335697f8dc5b3ce85a76 , now "9.999999999999998" is printed as "9.999999999999998". When the...

I can implement a correctly rounded method, but the optimal approach for maximum speed needs to be carefully considered. The basic principle is as follows: 1. Let the binary significand...

# yyjson ≠ 万能王者:它只是 LJSON DOM 复用模式的一个特化版本 *——一场关于 JSON 引擎架构哲学的深度对话* ## 引言:性能之外,还有架构的边界 在 C 语言 JSON 库的世界里,yyjson 凭借惊人的解析速度成为众多 benchmark 的常客。但如果你是一位系统级工程师,追求的不只是跑分,而是架构的可控性、可维护性和真实场景下的适应力,那么你会发现: > **yyjson 本质上只是 LJSON 所提供的 DOM 复用模式的一个特化版本。** (首次提交时间,yyjson 为 **2020.10**,LJSON...

# LJSON 高性能优化的平衡之道:哲学思维与工程实践 **项目地址** - github: https://github.com/lengjingzju/json - gitee: https://gitee.com/lengjingzju/json ## 引言:与计算本质的深度对话 性能优化既不是纯粹的技术堆砌,也不是形而上的抽象思辨,而是一场与计算本质的深刻对话。它要求开发者在有限资源与无限可能性之间、在时间与空间之间、在理想与现实之间,寻找动态平衡的艺术。LJSON 项目的优化实践立足于“尊重数据本质、拥抱硬件特性、精简热路径决策”三大基石,将哲学性思考与工程可行性有机融合。 真正的性能突破源于对数据本质的洞察、硬件特性的顺应,以及对工程规律的尊重。LJSON 通过创新的架构设计与算法优化,在 JSON 处理领域实现了突破性的性能提升,这一切都建立在深刻的工程哲学基础之上。 ## 一、算法与框架:多维解析模式的智慧平衡 ### 哲学思考 一切优化的终极边界,由算法和框架所划定。这关乎**选择**——在无限的解空间中,找到与需求约束最契合的路径;这也关乎**约束**——承认资源的有限性,并在此前提下构建秩序。高性能的基石,始于对问题本质的洞察,而非对细枝末节的修补。一个优雅的算法,建立在对问题的深刻抽象之上;一个强大的框架,源于对复杂性的成功封装。 优秀的开发者懂得在问题空间的无限可能性中,识别出与硬件特性、数据特征和业务需求最匹配的解决方案,在“问题规模—时间复杂度—空间复杂度”构成的三维空间中寻找最优解释。这种选择不仅是技术决策,更是对问题本质的深刻洞察。 LJSON 的设计哲学,是在提供丰富功能的同时,确保每种场景都能匹配最优的解析路径。 ### 实践原则 LJSON 框架提供多达...

# yyjson ≠ 万能王者:它只是 LJSON DOM 复用模式的一个特化版本 *——一场关于 JSON 引擎架构哲学的深度对话* ## 引言:性能之外,还有架构的边界 在 C 语言 JSON 库的世界里,yyjson 凭借惊人的解析速度成为众多 benchmark 的常客。但如果你是一位系统级工程师,追求的不只是跑分,而是架构的可控性、可维护性和真实场景下的适应力,那么你会发现: > **yyjson 本质上只是 LJSON 所提供的 DOM 复用模式的一个特化版本。** (首次提交时间,yyjson 为 **2020.10**,LJSON...

# LJSON 高性能优化的平衡之道:哲学思维与工程实践 **项目地址** - github: https://github.com/lengjingzju/json - gitee: https://gitee.com/lengjingzju/json ## 引言:与计算本质的深度对话 性能优化既不是纯粹的技术堆砌,也不是形而上的抽象思辨,而是一场与计算本质的深刻对话。它要求开发者在有限资源与无限可能性之间、在时间与空间之间、在理想与现实之间,寻找动态平衡的艺术。LJSON 项目的优化实践立足于“尊重数据本质、拥抱硬件特性、精简热路径决策”三大基石,将哲学性思考与工程可行性有机融合。 真正的性能突破源于对数据本质的洞察、硬件特性的顺应,以及对工程规律的尊重。LJSON 通过创新的架构设计与算法优化,在 JSON 处理领域实现了突破性的性能提升,这一切都建立在深刻的工程哲学基础之上。 ## 一、算法与框架:多维解析模式的智慧平衡 ### 哲学思考 一切优化的终极边界,由算法和框架所划定。这关乎**选择**——在无限的解空间中,找到与需求约束最契合的路径;这也关乎**约束**——承认资源的有限性,并在此前提下构建秩序。高性能的基石,始于对问题本质的洞察,而非对细枝末节的修补。一个优雅的算法,建立在对问题的深刻抽象之上;一个强大的框架,源于对复杂性的成功封装。 优秀的开发者懂得在问题空间的无限可能性中,识别出与硬件特性、数据特征和业务需求最匹配的解决方案,在“问题规模—时间复杂度—空间复杂度”构成的三维空间中寻找最优解释。这种选择不仅是技术决策,更是对问题本质的深刻洞察。 LJSON 的设计哲学,是在提供丰富功能的同时,确保每种场景都能匹配最优的解析路径。 ### 实践原则 LJSON 框架提供多达...