FastMM5


本文整理自网络,侵删。

 
FastMM是Embarcadero Delphi的内存管理器的替代品,可在多线程和CPU内核之间很好地扩展,不易出现内存碎片,并且无需使用外部.DLL文件即可支持内存共享。

版本5是完全重写了FastMM,从头开始设计,目的是同时保持其优势并解决4.992版的bug。

这一版本极大的改进对跨多CPU内核的多线程扩展,而不会出现内存使用中断的情况。对于任意数量的CPU内核,可以将其配置为接近线性扩展。
在Fastcode内存管理器基准测试工具中,FastMM 5在单线程基准上得分比FastMM 4.992高15%,在多线程基准上得分高30%。(启用了I7-8700K CPU,EnableMMX和AssumeMultithreaded选项。)
这一版本在运行时实现了完全可配置,这不需要更改条件定义并重新编译。(但是,它与第4版条件定义中的许多版本向后兼容。)
调试模式默认使用与版本4(FastMM_FullDebugMode.dll)相同的调试支持库,但是还支持自定义堆栈跟踪例程。调用FastMM_EnterDebugMode切换到调试模式(“ FullDebugMode”),然后调用FastMM_ExitDebugMode返回性能模式。调用可以嵌套,在这种情况下,在上一次FastMM_ExitDebugMode调用之后将退出调试模式。
这一版本支持所有块的8、16、32或64字节对齐。调用FastMM_EnterMinimumAddressAlignment以请求最小块对齐,并调用FastMM_ExitMinimumAddressAlignment以撤消先前的请求。调用可以嵌套,在这种情况下,最粗略的对齐请求将生效。
所有事件通知(错误,内存泄漏消息等)都可以路由到调试器(通过OutputDebugString),日志文件,屏幕或三者的任意组合。消息是使用包含邮件合并令牌的模板构建的。可以更改运行时模板,以促进不同的布局和/或翻译成任何语言。模板完全支持Unicode,并且可以将日志文件配置为以UTF-8或UTF-16格式编写,带有或不带有BOM。
可以通过FastMM_SetOptimizationStrategy调用将运行时配置为有利于速度,内存使用效率或两者的结合。

地址:https://github.com/pleriche/FastMM5

这是个令人兴奋的版本,看到有朋友测试,竟然比4快了6倍。

https://www.cnblogs.com/kinglandsoft/p/12813157.html

相关阅读 >>

Delphi 倒计时对话框

Delphi firemonkey 图片显示拉伸不变形

Delphi http协议验证访问datasnap rest 服务器

Delphi xe tparallel.for循环

Delphi firedac 的recordcount 相关测试 记录

Delphi直接插入法排序示例

Delphi 如何将access数据库后缀名accdb改为mdb

Delphi 关闭icesword等

Delphi allocmem

monthdays:给出一个月的天数

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...