|
26 | 26 | from perfkitbenchmarker import sample |
27 | 27 | from perfkitbenchmarker import stages |
28 | 28 | from perfkitbenchmarker.linux_packages import build_tools |
| 29 | +from perfkitbenchmarker.linux_packages import fortran |
29 | 30 |
|
30 | 31 | BASE_MODE = 'base' |
31 | 32 | PEAK_MODE = 'peak' |
@@ -290,9 +291,10 @@ def InstallSPECCPU(vm, speccpu_vm_state): |
290 | 291 | def Install(vm): |
291 | 292 | """Installs SPECCPU dependencies.""" |
292 | 293 | vm.Install('wget') |
293 | | - vm.Install('fortran') |
294 | 294 | # Install gcc, g++, fortran according to --gcc_version |
295 | 295 | vm.Install('build_tools') |
| 296 | + # Verify fortran is installed correctly |
| 297 | + fortran.GetFortranVersion(vm, required_version_prefix=FLAGS.gcc_version) |
296 | 298 |
|
297 | 299 | # Install libxcrypt-compat is needed on RHEL 9 based OSes, but not available |
298 | 300 | # on RHEL 8 based OSes. |
@@ -505,6 +507,7 @@ def _ExtractScore(stdout, vm, keep_partial_results, runspec_metric): |
505 | 507 | 'spec17_fdo': FLAGS.spec17_fdo, |
506 | 508 | 'spec17_subset': FLAGS.spec17_subset, |
507 | 509 | 'gcc_version': build_tools.GetVersion(vm, 'gcc'), |
| 510 | + 'gfortran_version': fortran.GetFortranVersion(vm), |
508 | 511 | } |
509 | 512 | if cpu_version: |
510 | 513 | major, minor = cpu_version |
@@ -551,12 +554,15 @@ def _ExtractScore(stdout, vm, keep_partial_results, runspec_metric): |
551 | 554 | missing_results.append(spec_name) |
552 | 555 |
|
553 | 556 | if missing_results: |
| 557 | + missing_results_str = ','.join(missing_results) |
554 | 558 | if keep_partial_results: |
555 | 559 | metadata['partial'] = 'true' |
556 | | - metadata['missing_results'] = ','.join(missing_results) |
| 560 | + metadata['missing_results'] = missing_results_str |
| 561 | + for result in results: |
| 562 | + result.metadata.update(metadata) |
557 | 563 | else: |
558 | 564 | raise errors.Benchmarks.RunError( |
559 | | - 'speccpu: results missing, see log: ' + ','.join(missing_results) |
| 565 | + 'speccpu: results missing, see log: ' + missing_results_str |
560 | 566 | ) |
561 | 567 |
|
562 | 568 | if spec_score: |
|
0 commit comments