{"id":18421989,"url":"https://github.com/spcl/loggopsim2","last_synced_at":"2025-04-13T12:11:22.588Z","repository":{"id":73700769,"uuid":"110617186","full_name":"spcl/LogGOPSim2","owner":"spcl","description":null,"archived":false,"fork":false,"pushed_at":"2018-07-08T10:09:28.000Z","size":3171,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-10T00:57:55.582Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spcl.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-14T00:04:36.000Z","updated_at":"2021-09-04T00:00:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"838efc41-e74e-4419-a21b-634287ae7eca","html_url":"https://github.com/spcl/LogGOPSim2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2FLogGOPSim2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2FLogGOPSim2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2FLogGOPSim2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2FLogGOPSim2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spcl","download_url":"https://codeload.github.com/spcl/LogGOPSim2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710445,"owners_count":21149190,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T04:27:38.270Z","updated_at":"2025-04-13T12:11:22.562Z","avatar_url":"https://github.com/spcl.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"LogGOPSim \n\nChangelog\n---------\n v2.0: new structure, packet-switched network module, gem5 integration - Salvatore Di Girolamo, Konstantin Taranov, Timo Schneider, Torsten Hoefler\n v1.1: ported agraph to cgraph, Torsten Hoefler, Timo Schneider\n v1.0: Initial version - Torsten Hoefler, Timo Schneider\n\nInstalling\n----------\n  * prerequisites to for LogGOPSim: \n    - C++ compiler (e.g., g++)\n    - re2c - http://re2c.org/\n    - gengetopt - http://www.gnu.org/software/gengetopt/gengetopt.html\n    - libagraph - http://www.graphviz.org/\n\n  * optional prerequisites to enable gem5 support (assuming modern Ubuntu/Debian system -- tested with Ubuntu 16 LTS):\n    - install and test gem5:\n      1) sudo apt-get install mercurial scons swig gcc m4 python python-dev libgoogle-perftools-dev g++ zlib1g-dev\n      2) hg clone -r 11794 http://repo.gem5.org/gem5\n      3) cd gem5\n      4) (optional) build binaries with: scons build/ARM/gem5.opt -j 4\n      5) (optional) test with: build/ARM/gem5.opt configs/example/se.py -c tests/test-progs/hello/bin/arm/linux/hello\n    - install cross-compilation tools for ARM\n      7) sudo apt-get install gcc-arm-linux-gnueabi\n      8) optional: sudo apt-get install libc6-dev-armel-armhf-cross\n\n  * build: \n    - without gem5: ./configure\n    - with gem5:    \n      - install lgs-gem5 module: ./install_gem5mod.sh \u003cpath to gem5 BUILD\u003e\n      - build gem5 as library: (in gem-5 directory) scons --without-python --with-cxx-config --without-tcmalloc -j 4 build/ARM/libgem5_opt.so\n    - ./configure --with-gem5=\u003cpath to gem5\u003e\n    - make\n    - make install\n\nRunning a LogP simulation without gem5\n--------------------------------------\n  * write or generate a GOAL schedule or use one of the example\n    schedules (e.g., dissemination_16.goal or binary_tree_16.goal)\n\n  * convert schedule to binary format using txt2bin:\n    - e.g., txt2bin -i dissemination_16.goal -o dissemination_16.bin  \n\n  * execute simulation with default parameters (see LogGOPSim --help for\n    more options):\n    - e.g., LogGOPSim -f dissemination_16.bin\n\n  * interpret output:\n    - for small simulations, each host end time is printed (22000ns for\n      our example with default parameters)\n    - for larger runs, only the maximum time is printed\n\nRunning a LogP+packet simulation with gem5\n------------------------------------------\n  * generate network topology file or use one of the examples (e.g., use\n    simplenet.dot)\n\n  * write or generate a GOAL schedule (see README_GOAL) or use one of the example\n    schedules (e.g. create_goal.sh in benchmarks)\n\n  * To run a simple simulation with gem5 support: ./run.sh \u003cgoal-file-prefix\u003e  \n    - run with visualization: ./run.sh \u003cgoal-file-prefix\u003e -V\n    -\u003e see run.sh for details\n\nVisualization\n-------------\n  * run LogGOPSim with -V \u003coutfile\u003e option:\n    - e.g., LogGOPSim -f dissemination_16.bin -V viz.out\n\n  * compile DrawViz (simple \"make\")\n  \n  * run DrawViz (only for smaller simulations):\n    - e.g., drawviz -i viz.out -o viz.eps\n\n  * view postscript output:\n    - e.g., gv viz.eps\n\n\nP4Schedgen - automatic GOAL schedule generator for Portals 4\n------------------------------------------------------------\n  * compile P4Schedgen (sime \"make\") \n\n  * run schedgen to produce GOAL files for Portals 4 collective operations.\n    e.g.: ./p4schedgen allreduce 16 4 \n    (generates an allreduce schedule for 16 processors with a 4byte message size)\n\n  * see ./p4schedgen --help for the complete usage\n\n\n\nSchedgen - automatic GOAL schedule generator\n--------------------------------------------\n  * compile SchedGen (simple \"make\")\n\n  * run schedgen to generate schedules for collective operations:\n    - e.g., schedgen -p binomialtreebcast -s 32 -o binary_tree_32.goal\n      (generates a binomial tree brodacast pattern with 32 processes,\n      the GOAL schedule can be converted to the binary simulator input\n      with txt2bin)\n\n  * run schedgen to generate schedules for application traces collected\n    with liballprof-0.9:\n    - traces need to be collected by linking liballprof as PMPI layer\n      with an MPI application. Sample traces are included in the\n      distribution in liballprof-samples\n    - e.g., schedgen -p trace --traces liballprof-samples/sweep3d-2x2/pmpi-trace-rank-0.txt -o sweep-4.goal\n    - convert and simulate:\n      - e.g., txt2bin -i sweep-4.goal -o sweep-4.bin\n              LogGOPSim -f sweep-4.bin\n\nBenchmarks \n----------\n  * To build all required binaries for benchmarks execute ./init.sh {PATH TO GEM5}\n    - Note: gem5 should be already patched (see the Installing section in README)\n\n  * To run all benchmarks from the paper, use ./run_all_tests.sh\n\n  * To create visualizations for all test from the paper, use ./create_all_visualizations.sh\n    - The resulting figure will be in DrawViz folder\n\n  * To run a particular test, use ./run_benchmark.sh\n\n  * To create a particular figure, use ./run_create_vis.sh\n    - The resulting figure will be in DrawViz folder\n  \n\n\nCitation\n--------\nAny published work which uses this software should include the following\ncitation:\n----------------------------------------------------------------------\nT. Hoefler, T. Schneider, A. Lumsdaine: LogGOPSim ­ Simulating\nLarge-Scale Applications in the LogGOPS Model\n----------------------------------------------------------------------\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Floggopsim2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspcl%2Floggopsim2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Floggopsim2/lists"}