我正在尝试将大页面用于我的应用程序的 .text 段以减少 TLB 未命中。我成功地使用 libhugetlbfs 支持重新链接了我的应用程序,并且主可执行文件的 .text 段现在正在加载到大页面支持的内存中。
然而,应用程序的主要代码库是由几个共享库构成的,所以我希望这些库也由大页面支持。简单地将 .so 与主应用程序相同的选项链接并设置 env 参数不会导致 .so .text 段出现在大页面上。
有什么办法可以将 .so 加载到大页面中?我可以对我的应用程序进行静态链接,但这会使构建变得非常复杂。