Improve compilation checks #194
Comments
The Repository meta-data organisationHowever I feel compelled to point out I'm not happy with the The single file describing everything about a benchmark (the
It has the following disadvantages:
The multiple file approach has the following advantages:
it has the following disadvantages:
There is a trade off here but I consider the single file (per benchmark) approach to be better. The weakness of gathering statistics can be solved by having additional scripts to traverse the repository and gather the needed information. The modular nature of this organisation is also quite nice because you can pass the script a sub directory of the repository and it will gather statistics only for that sub directory. Whatever choice is made it is important that metadata be machine readable. Although the This is why the mock up I had provided a versioned (for doing upgrades) schema for the Given the current organisation I wouldn't want to hook the build system up to it. Other issues
That is a fairly straight forward change to make. It requires changing how directory traversal works in
I think just doing
This is do-able today by modifying the relevant
|
@delcypher Many thanks for your response!
This is probably a topic for a different issue, I just want to give a single comment:
The build system is the least important consumer of these metadata. Other people that want to use these tasks for benchmarking are the ones for who we should make it as easy as possible. The current structure is mostly motivated by the fact that it is trivial to use in all sorts of scripts. This does not mean that it cannot and should not be improved, but we need to take into account what the important goals are, and we should discuss this in another issue.
Yes it intended to be YAML. A schema would be good to have and will probably be written when the format is more stable, but machines can already read it as it is (
That would be great. I have no idea how to do this with the current set of Makefiles, though. It would be great if you could create a PR?
Ok, I will experiment with this.
The example would be great, but you mentioned recently that |
@PhilippWendler Thanks for the detailed answers and explanations, which fully match my intentions. @delcypher When I introduced the new structure with the .prp and .cfg files, I had two goals in mind:
I do not work according to Waterfall process model, more like Scrum. More will be added to those files when I start setting up the demo category on no-preprocessing, i.e., the next "sprint" Best, On 2016-11-07 09:13 PM, Philipp Wendler wrote:
|
I've create #213 for this. But I don't agree with "Verifiers that want to verify a task are no direct consumers at all". If you want the benchmark suite to be useful outside of SV-COMP (which I think you or @dbeyer mentioned as a goal at some point) then focusing only what the SV-COMP verifiers will see is the wrong approach. The repository meta-data as it is right now is not very convenient to work with directly.
I've made a PR (#212). |
…first error. This was discussed in #194. If we find that this is inconvenient too often, we can move the flag from Makefile.config to .travis.yml.
It would be good to improve the compilation checks that are executed for all benchmarks:
task-definition files instead ofCategory.cfg
Makefile
to avoid the need to specify it twice.I keep wondering whether the existing
Makefile
-based system is a good fit for this. TheMakefile
syntax is very hard to read (especiallyMakefile.rules
) and I would have no idea how to implement these features. @delcypher how could this be done?The text was updated successfully, but these errors were encountered: