是否有可能使ndk的链接器在启用多线程的情况下运行?

问题描述 投票:1回答:1

我们拥有一个由数百万行代码组成的巨型库,它针对iOS和Android。

在iOS上,链接非常快,只需几秒钟。在使用最新的NDK的Android上,它的速度要慢一点,在同一台计算机上大约需要4分钟。

注意:我在macOS Mojave上

当我检查NDK的ld在活动监视器上时,它显示它使用了一个线程。

是否有办法使它使用多线程? (希望获得有意义的速度提升)

注意,我们将CMake与忍者生成器一起使用。

android android-ndk ld
1个回答
0
投票

嗯,我在NDK的1月r21版本中发现了以下内容:

LLD is now available for testing. 
AOSP is in the process of switching to using LLD by default and the NDK will follow (timeline unknown). 
Test LLD in your app by passing -fuse-ld=lld when linking

来源:https://developer.android.com/ndk/downloads/revision_history

我确认LLD在我的MacBook Pro(2.9Ghz Core i7 CPU)上使用了9个线程过去耗时4分钟以上的链接不到一分钟,真棒!

© www.soinside.com 2019 - 2024. All rights reserved.