Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build and link can run parallel? #4928

Closed
MaxwellGengYF opened this issue Apr 3, 2024 · 6 comments
Closed

Build and link can run parallel? #4928

MaxwellGengYF opened this issue Apr 3, 2024 · 6 comments

Comments

@MaxwellGengYF
Copy link
Contributor

Is your feature request related to a problem? Please describe.

目前compile与link阶段,似乎有一层全局同步,即使数个target互相无依赖也会有这样的情况。在单个compile目标足够大,以及单个link耗时长的情况下,会有严重的气泡,降低性能。

Describe the solution you'd like

无依赖的target可以并行执行link和compile。

Describe alternatives you've considered

No response

Additional context

No response

@waruqi
Copy link
Member

waruqi commented Apr 3, 2024

内部没有全局同步,相互无依赖就会并行构建。你可以提供下可以复现的 project example.

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


There is no global synchronization internally, and they will be built in parallel without dependencies on each other. You can provide a reproducible project example.

@MaxwellGengYF
Copy link
Contributor Author

@waruqi
Copy link
Member

waruqi commented Apr 7, 2024

看了下,大概知道了原因,是 runjobs 里面调度策略有问题,不过需要点时间来改进

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


After looking at it, I probably know the reason. There is a problem with the scheduling strategy in runjobs, but it will take some time to improve.

@waruqi waruqi mentioned this issue Apr 8, 2024
@waruqi waruqi added this to the v2.9.1 milestone Apr 8, 2024
@waruqi
Copy link
Member

waruqi commented Apr 8, 2024

应该可以了,runjobs 里面的调度算法我改进过了,再试试 #4947

xmake update -s github:xmake-io/xmake#runjobs

@waruqi waruqi closed this as completed Apr 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants