Differences

This shows you the differences between two versions of the page.

wiki:reproguide [2014/05/07 15:56]
yang
wiki:reproguide [2015/05/27 02:06] (current)
Line 2: Line 2:
==== recent updates ==== ==== recent updates ====
-**Start from sep150, we introduced an independent test account 'rep' on SEP-owned servers, this account has all basic environment settings. In addition to testing with your own account, you must test your report using 'rep' account (following the guideline and items in the scoresheet) before you notify me for testing. This will greatly reduce my burden and make you appreciate my efforts a little more :) Unfortunately, due to the university's IT security regulation CEES computers, we cannot adopt this practice on CEES environment.**+**Start from sep150, we introduced an independent test account 'rep' on SEP-owned servers, this account has all basic environment settings. In addition to testing with your own account, you must test your report using 'rep' account (following the guideline and items in the scoresheet) before you notify me for testing. This will greatly reduce my burden and make you appreciate my efforts a little more :) Unfortunately, due to the university's IT security regulation on CEES computers, we cannot adopt this practice on CEES environment.**
==== Requirement for repro test ==== ==== Requirement for repro test ====
Line 21: Line 21:
** All requirements except the last two are mandatory(everyone needs to pass in order to pass the test). ** ** All requirements except the last two are mandatory(everyone needs to pass in order to pass the test). **
-Also we will check that proper reproducibility label are assigned to each figures.+Also we will check if proper reproducibility label are assigned to each figures.
=== In addition to that, you should also have the following === === In addition to that, you should also have the following ===
Line 27: Line 27:
1. Have a backup folder for the figures in the paper (./Fig_bkup), this is for backup purpose, but also enables other user can compare the computation result with that in the paper. 1. Have a backup folder for the figures in the paper (./Fig_bkup), this is for backup purpose, but also enables other user can compare the computation result with that in the paper.
-2. Have your input/raw data files stored in a designated folder, you have the following choices:+2. Have your input/raw data files stored in a designated folder, not temporary scratch folder because they will be gone at some time, you have the following choices:
- If the file is small (let's say <10MB), and does not involve copyright issues, you can just put it in the report folder, using the out=stdout trick or store the .H@ file in the same folder with the .H file. - If the file is small (let's say <10MB), and does not involve copyright issues, you can just put it in the report folder, using the out=stdout trick or store the .H@ file in the same folder with the .H file.
Line 37: Line 37:
==== makefile format ==== ==== makefile format ====
-It is not rare that your makefile will have dozens of entries. We are not able to check all of these. Therefore, we require the makefile to have several common targets, i.e+It is not rare that your makefile will have dozens of entries. We are not able to check all of these. Therefore, we require the makefile to have several common targets, i.e (The exact forms might be different, but nonetheless it should be self-explanatory otherwise, your need to provide instructions to make it easy to follow)
1. make burn;      burn all the figures in the paper. 1. make burn;      burn all the figures in the paper.
Line 43: Line 43:
2. make clean;     burn all figures, and also clean the executables and the intermediate result file (.H). 2. make clean;     burn all figures, and also clean the executables and the intermediate result file (.H).
-3. make NR;       build NR figures; (this could be a simple copy from a backup folder).+3. make EXE;      build all executables used for this report
-4. make ER;        build ER figures+4. make NR;        build NR figures; (this could be a simple copy from a backup folder).
-5. make CR;        build CR figures+5. make ER;        build ER figures
-Again, you can back up your figures to a separate folder, but it is not OK to just copy them back to directory Fig in those figures making rules.+6. make CR;        build CR figures 
 + 
 +Again, you can back up your figures to a separate folder, but it is not OK to just copy them back to directory Fig in those figures-making rules
 + 
 +==== Reproducibility file organization on CEES computers ===== 
 + 
 +People using CEES computers for their computation usually involves PBS and python scripts, etc. Putting the entire workflow into a makefile is sometimes a difficult task. Nonetheless, you can still organize your reproducibility workflow around the Makefile, and the criterion for the reproducibility does not change, i.e. the code should compile, the ER flow is present and can be generated successfully by a tester, the CR flow is present. 
 + 
 +So In the makefile, you should still have complete flows for each figure in your paper. If computing a figure involves running a script, you should record the cmd the runs the script in the makefile. You can add some comments for better readability as well.
==== FAQs ==== ==== FAQs ====
Line 62: Line 70:
place to reproduce the figure if certain resources are available. **The primary reasons place to reproduce the figure if certain resources are available. **The primary reasons
for the CR designation is that the processing requires 20 minutes or more, MPI or for the CR designation is that the processing requires 20 minutes or more, MPI or
-CUDA based code, or commercial packages such as Matlab or Mathematica**.+CUDA based code should be labeled CR**.
**NR** denotes Non-Reproducible figures. SEP discourages authors from flagging their figures as NR except for figures that are used solely for motivation, comparison, or **NR** denotes Non-Reproducible figures. SEP discourages authors from flagging their figures as NR except for figures that are used solely for motivation, comparison, or
Line 68: Line 76:
SEP reports not by the authors or from non-SEP publications. SEP reports not by the authors or from non-SEP publications.
- Please refer to the up-to-date instructions @ +Please refer to the up-to-date instructions at  
-// vostok: net/server/wrk/sep147/Adm/preface.tex // +**vostok:/wrk/sep1xx/Adm/preface.tex**
-for the most updated details.+
//2. Do I need to include all the .H files I used in the figures in the local directory?// //2. Do I need to include all the .H files I used in the figures in the local directory?//
Line 79: Line 86:
Use the '-n' option in Make. This option allows the user to see all the commands that GNUmake would execute for this target, but without actually executing them. For example, to test target.H, enter '' make -n target.H'' rather than ''make target.H''. The terminal will display the commands that would be run as well as report any mistakes you may have made, such as a filename typo in the dependency list. Use the '-n' option in Make. This option allows the user to see all the commands that GNUmake would execute for this target, but without actually executing them. For example, to test target.H, enter '' make -n target.H'' rather than ''make target.H''. The terminal will display the commands that would be run as well as report any mistakes you may have made, such as a filename typo in the dependency list.
 +
 +
 +==== Common Dos and Don'ts ====
 +//1. Unless intended, DO NOT set the permission of any of your files to be "r w x - - - - - - ", this would block anybody else's access. //
 +
==== Tips ==== ==== Tips ====
1. put a dash '-' at the beginning of the command, if you want Make to ignore the encountered error and continue the flow. 1. put a dash '-' at the beginning of the command, if you want Make to ignore the encountered error and continue the flow.
-For eg. (remove the double quotes below)+For eg. (remove the double quotes below):\\
 +<code>
buildx: buildx:
    "-" mkdir bin     "-" mkdir bin
    make bin/exe.x     make bin/exe.x
-  +</code> 
 + 
 +2. Use make '-t' option to tell gmake that certain target with all its dependencies are up-to-date, thus prevent gmake from regenerating them by accident. Reversely, use make '-B' to force gmake to rebuild certain target from scratch. 
 + 
 +3. One suggested practice is to put the file names of your reproducibility figures as the dependencies for the 'ER' and 'CR' target. i.e. : \\ 
 +<code> 
 +ER: $R/fig1.pdf $R/fig2.pdf 
 +</code> 
 +is much better than:\\ 
 +<code> 
 +ER: 
 +  make $R/fig1.pdf  
 +  make $R/fig2.pdf 
 +</code> 
 +Because in the latter case, GMake is able to check the dependencies tree for each figure. 
/web/html/data/attic/wiki/reproguide.1399478195.txt.gz · Last modified: 2015/05/26 22:41 (external edit)
www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0