Dear all, As part of the gem5 20 release, we want to improve the way we handle the gem5 resources. What I mean by resources are things such as test programs, images, kernels, etc; stuff that we don't strictly need to compile or run gem5, but we frequently use (and/or may be difficult to distribute as part of gem5 due to licencing conflicts). At present, some of these are currently committed within the gem5 repository, and some are pulled from our Google Cloud bucket as needed (there may be others outside of this of which I am not aware of).
The problem at present is: A) The resources are not available in some common way across the project. B) The resources change over time and this change is not well recorded, particularly in the case of compiled binaries. The source of these binaries needs to be provided and changes to them properly logged. C) Similar to B), resources do not map to versions. A resource can change in our cloud bucket over time, which may break certain activities if needed by a previous version of gem5. The proposal is to add another repository alongside gem5 and gem5-website on googlesource. This repository will contain the resources' sources, which can be compiled to produce the resources used by the project. I've started producing this here: https://github.com/gem5/gem5-resources. Please have a look and consult the README.md for an explanation on how this repository would work. The compiled products of this repo would be uploaded to our dist.gem5.org bucket. If someone wanted to alter or add a resource to gem5, they'd do so in this repo (via Gerrit). The gem5-resource directory would adopt the same versioning and master/develop branch split system as gem5 currently does. So, as gem5 v20.0.0.0 is released, so would gem5-resources v20.0.0.0. Version X of gem5 would always be assumed to work with version X of gem5-resources. The dist.gem5.org bucket would be kept up to date. dist.gem5.org/dist/current would track changes made to the gem5-resources develop branch with dist.gem5.org/dist/${VERSION} containing the resources for the ${VERSION} release. A few notes: - gem5 19 contains tests that pull from dist.gem5.org/dist/current. I believe I'll need to apply a hotfix to this release to pull from dist.gem5.org/dist/v19-0-0-1 instead. - Right now there is a lot of stuff on dist.gem5.org/dist/current which I do not have sources for. I may need to ask around. This may be a bit of work. I'd appreciate feedback on this, if anyone has any, before I proceed further with this plan. Kind regards, Bobby -- Dr. Bobby R. Bruce Room 2235, Kemper Hall, UC Davis Davis, CA, 95616 web: https://www.bobbybruce.net _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev