Commit Graph

36981 Commits

Author SHA1 Message Date
David Anderson b10221b29e scheduler: if a job is BUDA, we need to return usage info (CPU, GPU)
with the workunit rather than the app version.
This commit lays the groundword for this.
2024-12-13 10:08:54 -08:00
Vitalii Koshura 3bbf02e10e
Merge pull request #5949 from BOINC/vko_update_custom_librsvg_prot
[linux] update custom librsvg port
2024-12-13 02:17:13 +01:00
Vitalii Koshura f9b10ef02c
[linux] update custom librsvg port
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-13 01:47:00 +01:00
David Anderson fc745ae0a0 web: maintain a file 'project/buda_plan_classes'
with a list of BUDA variant names (i.e. plan classes).
    Update as variants are added and deleted.
    This is used in project preferences for 'Use NVIDIA' type buttons.

feeder: the shared-mem segment has a list of resources types
    for which the project has work.
    Need to include BUDA variants also.
    Do this by scanning the 'buda_plan_classes' file (see above)

    Note: this means that when the set of BUDA variants changes,
    we need to restart the project

plan_class_spec.xml.sample:
    The 'cuda' class had a max compute capability of 200.
    Remove it.
2024-12-12 15:35:58 -08:00
Vitalii Koshura 318e591f41
Merge pull request #5947 from BOINC/vko_msi_refactor
Refactor boinc.json structure a little bit.
2024-12-12 11:10:57 +01:00
Vitalii Koshura 6b45a982dd
Refactor boinc.json structure a little bit.
Moved RadioButton definitions closer to the relevant controls.
Locale files now shoulw be defined in the main JSON file.
Add possibility to pass main JSON file as a parameter to the installer.exe.

Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-12 10:17:39 +01:00
David Anderson 1ca231c89a web and scheduler: enable plan classes for BUDA
If you make a variant of a BUDA app for a plan class
(e.g. NVIDIA GPU with CUDA)
this ensures that jobs submitted to that variant are sent
only to capable hosts,
and that the host usage and projected FLOPS are set correctly.

On the web side, we add a <plan_class> element to workunit.xml_doc.
This gets sent to the scheduler.

On the scheduler this required some reorganization.
As the scheduler scans jobs, it finds and caches
a BEST_APP_VERSION for each app.
This contains a HOST_USAGE.

In the case of BUDA, the host usage depends on the workunit,
not the app version.
We might scan several BUDA jobs
they'll all use the same APP_VERSION,
but they could have different plan classes
and therefore different HOST_USAGE.

So if we're looking at a job to send,
and the WU has a <plan_class> element,
call app_plan() to check the host capability and get the host usage.

Change add_result_to_reply() so that it takes a HOST_USAGE& argument,
rather than getting it from the BEST_APP_VERSION.

We do this in several places:
- sched_array (old scheduling policy)
- sched_score (new scheduling policy)
- sched_locality (locality scheduling)
- sched_resend (resending lost jobs)
- sched_assign (assigned jobs)
so all these functions work properly with BUDA apps.

-----------------

Also: the input and output templates for a BUDA app variant
depend only on the variant, not on batches or jobs.
So generate them when the variant is created,
and store them in the variant dir,
rather than generating them on batch submission

Also: fix bug in downloading batch output as .zip;
need to do zip -q
2024-12-11 17:00:45 -08:00
Vitalii Koshura 14a2a26179
Merge pull request #5944 from RokeJulianLockhart/patch-1
Convert issue templates from GHFM to YAML.
2024-12-11 01:17:05 +01:00
Vitalii Koshura f3d5782f83
Update .github/ISSUE_TEMPLATE/feature_request.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2024-12-11 01:16:20 +01:00
Mr. Beedell, Roke Julian Lockhart e769533a35
Update bug_report.yml
Remediates https://github.com/BOINC/boinc/pull/5944#discussion_r1879079494.
2024-12-10 23:54:10 +00:00
Vitalii Koshura 5eb9fa9829
Merge pull request #5945 from BOINC/dpa_sandbox3
web: make sandbox file list sortable by name, size, or date
2024-12-10 23:27:29 +01:00
Mr. Beedell, Roke Julian Lockhart f63b77589f
Update and rename other-issues.md to other-issues.yml
2⁄2!
2024-12-10 21:54:44 +00:00
Mr. Beedell, Roke Julian Lockhart a994bb4097
Update and rename bug_report.md to bug_report.yml
½ of https://github.com/BOINC/boinc/pull/5944#pullrequestreview-2493256846.
2024-12-10 21:49:21 +00:00
Mr. Beedell, Roke Julian Lockhart 154b5e1526
Update feature_request.yml
Resolves https://github.com/BOINC/boinc/pull/5944#pullrequestreview-2493649113.
2024-12-10 21:38:04 +00:00
Mr. Beedell, Roke Julian Lockhart 15752cec48
Update feature_request.yml
Satisfies https://github.com/BOINC/boinc/pull/5944#discussion_r1878632013.
2024-12-10 21:29:52 +00:00
David Anderson ba60bd8dc4 web: make sandbox file list sortable by name, size, or date 2024-12-10 13:25:51 -08:00
Mr. Beedell, Roke Julian Lockhart 8c0e1cb2af
Update and rename feature_request.md to feature_request.yml 2024-12-10 18:08:28 +00:00
Mr. Beedell, Roke Julian Lockhart 83674a4892
Update feature_request.md
Remediates https://github.com/BOINC/boinc/issues/5940#issuecomment-2531429972.
2024-12-10 14:10:40 +00:00
Vitalii Koshura a0097a4ff1
Merge pull request #5939 from BOINC/vko_update_actions
[ci] update actions
2024-12-08 14:25:52 +01:00
Vitalii Koshura 324cb191f5
[ci] update actions
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-08 13:53:54 +01:00
Vitalii Koshura c289bb2f83
Merge pull request #5937 from BOINC/vko_remove_unused_strings
[windows][installer] clean-up unused strings and resources
2024-12-07 15:09:39 +01:00
Vitalii Koshura 54266b2f53
Merge pull request #5938 from BOINC/dpa_start
fix problem where wrapper unzips input files each time it restarts
2024-12-07 13:56:20 +01:00
Vitalii Koshura 32f6cc87a2
[windows][installer] clean-up unused strings and resources
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-07 13:48:41 +01:00
davidpanderson 1ac38c9f77 bug fix 2024-12-06 23:23:28 -08:00
David Anderson 8f36cddcb7 wrapper: unzip input files only first time we run
client: set up slot dir only at start of job.
    This is a little tricky because of async file copy.
    Deal with this by creating a 'boinc_setup_complete' file
    after all files are copied.

These fixes address a problem where:
- wrapper job starts, unzips its output files, deletes the .zip
- job stops (e.g. client exits)
- job restarts; client sees that .zip file isn't in slot dir,
    copies it again.
- wrapper starts, unzips .zip file again.

The fixes address both (new client, old wrapper) and (old client, new wrapper).
2024-12-06 16:17:10 -08:00
Vitalii Koshura 51803c6bf4
Merge pull request #5935 from BOINC/vko_arm64_fix_platform_name
[Windows] Set correct platform name when running BOINC client on Windows on ARM.
2024-12-05 22:11:27 +01:00
Vitalii Koshura 5a4c925f50
[Windows] Set correct platform name when running BOINC client on Windows on ARM.
With this commit a new platform name 'windows_arm64' added.
Also, according to the https://learn.microsoft.com/en-us/windows/arm/apps-on-arm-x86-emulation, Windows 10 on ARM supports x86 applications, and Windows 11 on ARM supports x64 applications.
That is why we will be checking what version of Windows we are running on, and adding 'windows_intelx86' on Windows 10 and later (I suppose, this is will set always) and 'windows_x86_64' on Windows 11 and later (nothing later at the moment, but we are looking into the future!).

This fixes #5934.

Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-05 21:06:33 +01:00
Vitalii Koshura aad8525719
Merge pull request #5930 from BOINC/vko_create_arm64_installer
Build arm64 installer
2024-12-05 18:38:59 +01:00
Vitalii Koshura 2c91e9320b
Merge pull request #5932 from BOINC/dpa_buda5
BUDA: support per-batch and per-job command-line args
2024-12-05 11:49:05 +01:00
Vitalii Koshura 18dc8fba67
Fix worker version
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-05 11:29:19 +01:00
David Anderson f24fc22020 file sandbox: put 'file list' and 'add file' on different pages
file sandbox: use Location: to prevent repeating op on page reload
BUDA: add explanatory text
2024-12-04 17:51:46 -08:00
Vitalii Koshura b5adcfabeb
Build arm64 installer
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-12-05 00:53:33 +01:00
David Anderson e14f7154d9 BUDA: debug cmdline arg features
- file sandbox: add 'Get web file' option
- docker wrapper: always write container log output to stderr
- worker: write cmdline args to stderr
- worker: version# is 4
- fix bug in file sandbox display
- fix bug in BUDA variant delete
- BUDA variant name defaults to 'cpu'
- update examples files in samples/docker_wrapper/test_buda
2024-12-04 15:10:12 -08:00
David Anderson e38016d017 BUDA: add cmdline field to submission form.
Specifies cmdline args for all jobs in batch;
you can also specify per-job args, which come after.

create_work: add logic to support the above;
also fix bug involving pointers to stack vars (big no-no)
2024-12-04 01:42:50 -08:00
Vitalii Koshura ff7810bdbd
Merge pull request #5929 from BOINC/dpa_docker4
docker_wrapper: allow passing args into container
2024-12-03 12:26:03 +01:00
davidpanderson b45b2c0f7e client: fix bug in Docker cleanup
docker wrapper: pass cmdline args in an env var ARGS
2024-12-03 01:18:56 -08:00
David Anderson 2ae1d9a9d1 docker_wrapper: unparsed cmdline args are passed to main program 2024-12-02 18:06:32 -08:00
Vitalii Koshura 9d73abf7f6
Merge pull request #5927 from BOINC/vko_installer_cleanup_for_pr
[Windows][Installer] Clean-up installer project
2024-11-30 05:06:54 +01:00
Vitalii Koshura 9247be12a7
[Windows][Installer] Clean-up installer project
- Replace icons
- Remove unused dialog
- Remove SetAllUsers.dll
- Remove Print LA action (I don't believe anybody still uses it). If required - it could be always implemented.
- Replace ISSetupAllUsers 3rd-party function
- Remove unused icons
- Convert custom build target to custom build step to fix build of MSI file when only *.json file was changed.
- Remove SFHelper.dll

Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-11-30 04:32:12 +01:00
Vitalii Koshura 7cc54fc66a
Merge pull request #5925 from makeasnek/linkfixes
Some link fixes
2024-11-29 11:31:39 +01:00
makeasnek 697cbb020f
Update census.cpp
Fix broken links
2024-11-29 01:51:30 -08:00
makeasnek 2e6b246d3d
Update manage_apps.php
Fix broken links
2024-11-29 01:51:22 -08:00
Vitalii Koshura 98b89e5eb3
Merge pull request #5924 from BOINC/dpa_web12
web: fix two undefined var bugs
2024-11-29 00:20:43 +01:00
David Anderson 07ee065bfe web: fix two undefined var bugs 2024-11-28 12:52:35 -08:00
Vitalii Koshura dc3597d958
Merge pull request #5923 from BOINC/dpa_buda4
Web: job submission enhancements
2024-11-28 11:04:25 +01:00
David Anderson 0e4b59061c - improve batch page
correctly show # of in progress, error, done, unsent jobs
    fraction done is frac of success jobs
- Add 'verbose' checkbox for BUDA job submit.
    docker_wrapper prints stuff to stderr (can view on result page)
- fix bugs in non-BUDA submit pages
2024-11-28 01:13:51 -08:00
Vitalii Koshura 31517ff0d3
Merge pull request #5922 from BOINC/vko_add_windows_installer_tests
Run Windows installation tests
2024-11-28 00:01:48 +01:00
Vitalii Koshura c37a1ff512
Run Windows installation tests
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-11-27 21:12:59 +01:00
Vitalii Koshura d23edc05e6
Merge pull request #5921 from BOINC/vko_fix_build
Build release versions of linux samples on Debian buster (glibc 2.28)
2024-11-27 12:25:38 +01:00
Vitalii Koshura 7c8cd9385a
Build release versions of linux samples on Debian buster (glibc 2.28)
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2024-11-27 02:14:52 +01:00