ngnrsaa / qflex

Flexible Quantum Circuit Simulator (qFlex) implements an efficient tensor network, CPU-based simulator of large quantum circuits.
Apache License 2.0
97 stars 25 forks source link

Organize simulation files. #86

Closed s-mandra closed 5 years ago

s-mandra commented 5 years ago

All simulations files are moved to share/. Blocked by #84.

s-mandra commented 5 years ago

I'm not sure 'share' gives a clear idea of what this directory contains - maybe "config" instead (since these files provide configuration for the qflex binary)?

Separately, I don't think the CLA belongs with the config files. It should be fine to keep it in qflex/nasa-cla.

I used share/ because it's the typical folder where linux store whatever is a configuration file. What about: share/config/{circuits, ordering, grid} and share/nasa-cla?

95-martin-orion commented 5 years ago

I used share/ because it's the typical folder where linux store whatever is a configuration file. What about: share/config/{circuits, ordering, grid} and share/nasa-cla?

I wasn't aware of this convention - is it something we can rely on users being familiar with? If so, then share/... should be fine.

s-mandra commented 5 years ago

I used share/ because it's the typical folder where linux store whatever is a configuration file. What about: share/config/{circuits, ordering, grid} and share/nasa-cla?

I wasn't aware of this convention - is it something we can rely on users being familiar with? If so, then share/... should be fine.

Not sure if people are aware :) But it seems pretty standard:

/usr/share = Architecture-independent (shared) data.
s-mandra commented 5 years ago

Just tried building with autoconf and I think I understand the use of share/ a little better.

Yes, it helps a lot with autoconf.

It makes me a bit uneasy that it installs the files directly in the usr/local/share directory, but I guess this is expected with autoconf? (Never used it before...)

Actually, the default location is $HOME/local. Anyhow, users can change the destination folder as:

./configure --prefix=/new/path/to/install

Thanks so much for your review!

s-mandra commented 5 years ago

In the end, I agree with you that share/ is confusing. For now, I'll put all configuration files in /config and I'll move /nasa-cla to /docs. I'll eventually fix autoconf to move /config to /share/qflex/config and /nasa-cla to /share/qflex/nasa-cla. Thanks!