Hey Tony, A few thoughts:
I think it's a good idea to post pre-production code publicly. This gives other developers a chance to see and comment on the design (well, it *could*), and, more importantly, it gives users access to new features quickly. There is one potential downside to the above: Less motivation to clean up code and push it into the mainline. I don't know how large of a downside this is, but from my personal experience with gem5-gpu, it's likely to happen. Merging gem5-gpu with mainline gem5 is *a lot* of work, and since we published our gem5 changes in another repo we never felt the need to undertake it. This was bad for the long-term viability of gem5-gpu and gem5-gpu's users. As far as specifically branches go, I think I would prefer to see separate repos like the arm/gem5 repo (or my github repo). I worry about two things when bringing branches into public/gem5. 1. We will have too many branches and it will be difficult to manage 2. Configuring gerrit so code-review is only required on master and whenever others post changes to any other branch no one gets emailed. The second concern may be solvable (I have no idea), and the first concern may not be warranted. I completely agree that branches are great (see my github repo, for instance. I have 10-20 branches personally). However, one thing I have discovered is that when working in a group you have to be *very* careful about how branches are managed across the group (e.g., when and who is allowed to rebase). I think using separate repositories gives most of the benefits of branches (simple to pull changes from others and see others work, better organization, etc) without the downsides. I'm open to other points of view, of course! Cheers, Jason On Thu, Dec 14, 2017 at 8:30 AM Gutierrez, Anthony < anthony.gutier...@amd.com> wrote: > Hi All, > > I have a question about using branches in the mainline gem5 repo. I see > ARM have a separate repo here: > https://gem5-review.googlesource.com/admin/projects/arm/gem5. It is used > for staging ARM features under development. At AMD we would like to do > something similar, as we have some significant changes to the GPU model we > would like to push out to the public. We were thinking about doing so with > branches, and were wondering what others thought about branches? I'm sure > it's been discussed somewhat in the past, but I can't find much searching > through old posts. > > What I was thinking would be to have institutional branches, like AMD or > ARM branches, and perhaps users from those institutions who are also gem5 > maintainers could have user specific branches. We use branches a lot > internally and find them extremely useful. So I'd like to get a better idea > why there is an aversion to using branches on the public tree, if there is > such an aversion. > > -Tony > _______________________________________________ > gem5-dev mailing list > gem5-dev@gem5.org > http://m5sim.org/mailman/listinfo/gem5-dev _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev