Skip to content

support niceness for local bulids#651

Open
jp-embedded wants to merge 1 commit intoicecc:masterfrom
jp-embedded:niceness
Open

support niceness for local bulids#651
jp-embedded wants to merge 1 commit intoicecc:masterfrom
jp-embedded:niceness

Conversation

@jp-embedded
Copy link
Copy Markdown

icecc priorotizes jobs based on the process's niceness. But not for local jobs. This PR fixes that.

@HenryMiller1
Copy link
Copy Markdown
Collaborator

Last I heard nice was almost meaningless on linux and other schedulers. If it isn't we should use very low priority (high nice) to let interactive things work. This seems like it is mostly useless and something we should rip out.

@jp-embedded
Copy link
Copy Markdown
Author

The niceness of the linux processes might not be useful. Put the prioritization of the queued icecc jobs is. So we have this project where a lot of linker jobs gets queued because they can run locally only. These then blocks other local jobs (libraries) that are queued after the linking jobs, until these linker jobs are done. The result is a reduced number of parallel jobs since a lot of following jobs are depending/waiting for the libraries.

Now, icecc can prioritize which jobs to execute first which solves this problem. This execute-order is determined by reading the niceness of the process.

So I don't think we should rip out this execute-order prioritization, but it would probably be better/more logical to provide this priority as an argument to icecc/icerun instead of reading it from its niceness. But since this is the way it was already made, I added this missing piece the same way so it now works for both remote and local jobs.

Now, we run icecc as a prefix like "icecc gcc ...." instead of using gcc as a symbolic link to icecc. So it would be easy enough for us to add an priority argument to icecc, but its not so straight forward when using a symbolic link. I guess that is why it is made to use the process niceness instead of an argument in the first place.

gfunkmonk added a commit to gfunkmonk/icecream that referenced this pull request Jan 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants