Hello folks,
The makefile for 177.mesa says that for a small problem size, it will
get 100 frames. But in the spec sources I have, the test folder only
contains numbers for 10 frames:
$ speccpu2000/benchspec/CFP2000/177.mesa/data $ wc -l test/input/numbers
10 test/input/numbers
Generating 100 frames causes undefined behaviour because the program is
doing unchecked fscanf on that "numbers" file.
Is my version of spec wrong ? If not, can we apply the attached patch ?
Thanks,
Julien
p.diff (427 Bytes)
Hello folks,
The makefile for 177.mesa says that for a small problem size, it will
get 100 frames. But in the spec sources I have, the test folder only
contains numbers for 10 frames:
$ speccpu2000/benchspec/CFP2000/177.mesa/data $ wc -l test/input/numbers
10 test/input/numbers
Generating 100 frames causes undefined behaviour because the program is
doing unchecked fscanf on that "numbers" file.
Is my version of spec wrong ?
What you say is true in the version I have.
If not, can we apply the attached patch ?
I don't think it's ideal. There are 3 input sets, not 2, that's the root of the problem:
ifndef RUN_TYPE
ifdef SMALL_PROBLEM_SIZE
RUN_TYPE := test
else
ifdef LARGE_PROBLEM_SIZE
RUN_TYPE := ref
else
RUN_TYPE := train
endif
100 is a fine value for "train". I think it's better to test both variables in the mesa Makefile.
(IMO controlling a ternary variable with 2 booleans is not the right way to do it, btw.)
Hello folks,
The makefile for 177.mesa says that for a small problem size, it will
get 100 frames. But in the spec sources I have, the test folder only
contains numbers for 10 frames:
$ speccpu2000/benchspec/CFP2000/177.mesa/data $ wc -l test/input/numbers
10 test/input/numbers
Generating 100 frames causes undefined behaviour because the program is
doing unchecked fscanf on that "numbers" file.
Is my version of spec wrong ?
What you say is true in the version I have.
If not, can we apply the attached patch ?
I don't think it's ideal. There are 3 input sets, not 2, that's the root
of the problem:
ifndef RUN_TYPE
ifdef SMALL_PROBLEM_SIZE
RUN_TYPE := test
else
ifdef LARGE_PROBLEM_SIZE
RUN_TYPE := ref
else
RUN_TYPE := train
endif
endif
endif
Ah, I should have verified. Thanks.
100 is a fine value for "train". I think it's better to test both
variables in the mesa Makefile.
Alright, I'll do that then.
Thanks Dale,