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

[CI] Make build environment parallel (Windows) #2080

Merged
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions ci/do_ci.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just curious, Will CMake automatically use Ninja as build system, or we need to configure it explicitly?
The build time is reduced from 14 min to 10 min for Windows, so there seems to be some level of parallelism.

Copy link
Member

@owent owent Mar 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should add -G Ninja to use ninja to build.
In my understanding, -j also works for Visual Studio Generator.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAIK, not automatically. Ninja generator (one of the CMake generators) which needs to be given explicitly to CMake.

Also, I tried to put Ninja as a generator to CMake at first but a few tests are failed due to missing Ninja packages.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With my solution (getting number of physical cores from Powershell command), I assume that it takes less time than before, what do you think?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah it looks good to me. The title of the PR says Ninja, so got confused :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, sorry for inconvenience. After discussion on issue, I decided to use Ninja but it does not work at all. So, I will update the PR title and do you want me to change commit message either?

$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -61,7 +61,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand Down Expand Up @@ -90,7 +90,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -111,7 +111,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -132,7 +132,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -154,7 +154,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -176,7 +176,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -197,7 +197,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand All @@ -214,7 +214,7 @@ switch ($action) {
if ($exit -ne 0) {
exit $exit
}
cmake --build .
cmake --build . -j
$exit = $LASTEXITCODE
if ($exit -ne 0) {
exit $exit
Expand Down