My purpose is to queue up a bunch of tasks > #cpus, and have #cpus run at a time in parallel. So if I have 120 jobs to run, and 32 cores, I want to queue them all up and run 32 in parallel at a time. Or, maybe I need to set --ncpus=16 so schedule 16 parallel jobs instead of 32 (my scheduler is very simple and doesn't know about free memory)
On Fri, Feb 4, 2022 at 10:24 AM John Mellor <john.mel...@gmail.com> wrote: > On 2022-02-04 09:04, Neal Becker wrote: > > After this discussion, I needed a simple batch scheduling system. I tried > installing and starting condor on F35. Never saw so many selinux > problems. Couldn't dnf remove it fast enough. > > After a bit of searching, I found the system I wrote 11 years ago. > https://pypi.org/project/batch-queue/ > > I just finished updating for py3 and a few more tweaks. > > It's a very simple system that runs on the local host and allows you to > submit jobs. It will schedule them up to the #cpus. There are commands to > list the queue, kill jobs, suspend and continue them. Does just what I > need. > > If it helps you too that's be great. > > On Wed, Jan 26, 2022 at 2:04 PM Fred Erickson <fredferick...@gmail.com> > wrote: > >> On Wed, 26 Jan 2022 12:59:23 -0500 >> Neal Becker <ndbeck...@gmail.com> wrote: >> >> > I've needed this over the years but all the ones I've seen appeared >> > much too complex for my simple use case. I ended up writing my own >> > using pyxmlrpc. Unfortunately haven't used it for years and don't >> > know if I could find it again (was uploaded to pypi at one time). >> > >> > Are any of these batch systems simple to install, use, and maintain? >> > >> >> I see batch was included with my f34 system and condor is provided in >> the updates repo. > > > I'm confused. Why do you feel the need for an overly-complicated job > scheduler, emulating the mainframe scheduling mess? Linux is a unix-like > system. Why don't you simply use the already-installed batch command? It > can easily handle thousands of simultaneously-scheduled batch jobs without > bringing the system to its knees. > > Unless your jobs are 100% cpu-bound, scheduling jobs by the number of cpus > seems just wrong, leaving a lot of unused cpu cycles on the table. If your > jobs are i/o-bound, then disk or network load seems like it should be taken > into account, not cpus. > > Luckily, the overall system load is always calculated for you with no > complicated mechanisms required. The batch command by default will not > schedule a job if the load > 1.5 so that you do not impact foreground > processes very much. You can also renice your batch job as required to > lessen the as-running impact even more. > > If what you really need is a CI/CD system, then use the correct tools for > the job. Batch is generally not considered to be one of them. Install > Jenkins or CircleCI or any of a dozen tools that are built to do this right. > > -- > > John Mellor > _______________________________________________ > users mailing list -- users@lists.fedoraproject.org > To unsubscribe send an email to users-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org > Do not reply to spam on the list, report it: > https://pagure.io/fedora-infrastructure > -- *Those who don't understand recursion are doomed to repeat it*
_______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure