Opened 13 years ago

Closed 13 years ago

Last modified 10 years ago

#3388 closed Feature Requests (wontfix)

Default to parallel build

Reported by: olafvdspek@… Owned by: René Rivera
Milestone: Boost 1.41.0 Component: bjam
Version: Boost 1.40.0 Severity: Problem
Keywords: Cc:

Description

Apparently bjam supports parallel builds with -j 4 (for example). Could it default to parallel builds using the number of cores as guideline?

Change History (5)

comment:1 by Steven Watanabe, 13 years ago

Component: Nonebjam
Owner: set to René Rivera

I prefer the default of a non-parallel build. It is more obvious and is consistent with other build tools.

comment:2 by anonymous, 13 years ago

Why is it more obvious?

Unfortunately, yes, most other tools default to serial execution as well. :(

comment:3 by Vladimir Prus, 13 years ago

Resolution: wontfix
Status: newclosed

Given that it's already possible to set per-user default by putting

option jobs : 4 ;

in any config file, and given that making parallel build the default is controversial, I guess I'll close this issue.

comment:4 by Tino, 10 years ago

Additionally, parallel builds can only be hardcoded to a specific number. AFAIK bjam can not use a make jobserver in the case that boost is only one part of the whole build process.

I have a build system that builds several software packages for several architectures in one run. I can specify make -j<number> and the make jobserver will use the specified number of jobs.

Except for Boost. I have to hardcode a fixed job number for the boost build (like bjam -j4), that leads to either unused CPU cores, or a lot of overhead, depending on the number of target architectures that are built and the number of CPU cores usable.

comment:5 by Vladimir Prus, 10 years ago

Tino,

it's not clear to me what you propose? Making b2 interact with make processes running at part of your bigger build does not seem easy.

Note: See TracTickets for help on using tickets.