Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General refactoring and updates (Bad) #187

Merged
merged 39 commits into from
Nov 8, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
6615622
DFDally: update primary comment information
nmcglo Oct 9, 2019
68775d5
Update License.md and include it in make dist
nmcglo Oct 9, 2019
0a6804d
update configure.ac to latest release version number
nmcglo Oct 9, 2019
30a9ad1
DFDally: Reorganization and cleanup
nmcglo Oct 9, 2019
1a3138b
warning cleanup: fix uninitialized parameter
nmcglo Oct 11, 2019
8882ea1
warning cleanup: fix bad format fprintf
nmcglo Oct 11, 2019
c508185
warning cleanup: dragonfly custom print formatting fixes
nmcglo Oct 11, 2019
ebf7e0b
warning cleanup: dragonfly plus printf format fixes
nmcglo Oct 11, 2019
56e306a
warning cleanup: fixing dfdally print formatting
nmcglo Oct 11, 2019
b99dcdd
warning cleanup: replacing c++11 for each loops
nmcglo Oct 11, 2019
992af09
DFDally: fix terminal stalled chunk usage
nmcglo Oct 11, 2019
670cab6
warning cleanup: various slimfly warning fixes
nmcglo Oct 11, 2019
5dd6a2d
warning cleanup: various model-net-mpi-replay warning fixes
nmcglo Oct 11, 2019
d5061fe
warning cleanup: various fixes for synthetic workloads
nmcglo Oct 11, 2019
172afb2
warning cleanup: fix poor struct init in tests
nmcglo Oct 11, 2019
63a38ac
Configure.ac: Moving Boost search into --with-online conditional
nmcglo Oct 11, 2019
71f72f7
warning cleanup: printf uint64 to llu disambiguation
nmcglo Oct 15, 2019
e9d00bb
Dragonfly Models: Reintroduce cn/local/global/credit delay overrides
nmcglo Oct 21, 2019
aebf8d0
Rehost make check test dumpi trace file
nmcglo Oct 23, 2019
9b50fe4
Fail configure when bison or flex not found
nmcglo Oct 23, 2019
683e8e5
DFD/DFP: Reorg to make source layout same
nmcglo Oct 25, 2019
7f1dde5
CODES Core: Separate network models from base
nmcglo Oct 25, 2019
bf0e31c
Update README to emphasize the wiki
nmcglo Oct 25, 2019
08527d2
Cleanup base directory
nmcglo Oct 25, 2019
aee964f
DFDally: remove unnecessary max latency calculation
nmcglo Oct 25, 2019
e10ed44
DFCustom: Add warning about potential misstep
nmcglo Oct 25, 2019
df6dd26
DFDally: organization, formatting, and restore sampling
nmcglo Nov 1, 2019
777aa74
DFP: QoS based busy time bugfix, output formatting uniformity
nmcglo Nov 1, 2019
50eba13
New Synthetic Generator: All Dragonfly
nmcglo Nov 1, 2019
6da146f
Network workload Config: fix missing semicolon
nmcglo Nov 1, 2019
4389f2b
DFP: Deterministic and statistic improvements
nmcglo Nov 4, 2019
7de324c
DFP test configuration: change default scoring metric to DELTA
nmcglo Nov 4, 2019
b81bd26
Dragonfly Models: Credit Delay Flexibility
nmcglo Nov 5, 2019
7c23411
Documentation: synthetic workload tutorial - Ping-Pong
nmcglo Nov 6, 2019
b8e6665
Add 3K 1D Dragonfly example config
nmcglo Nov 8, 2019
ab842ee
Add Slimfly/FitFly 3K example configs
nmcglo Nov 8, 2019
4fd5f42
Warning Cleanup: Fix possible overflow of workload filenames
nmcglo Nov 8, 2019
287fef9
Warning Cleanup: Fix potential overflow of annotation name
nmcglo Nov 8, 2019
5138b61
Rehost dumpi trace file for `make check` again
nmcglo Nov 8, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
************** Copyright © 2019, UChicago Argonne, LLC ***************

All Rights Reserved

Software Name: CO-Design of Exascale Storage and Network Architectures (CODES)

By: Argonne National Laboratory, Rensselaer Polytechnic Institute, Lawrence Livermore National Laboratory, and Illinois Institute of Technology

OPEN SOURCE LICENSE

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Expand Down
2 changes: 1 addition & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ pkgconfig_DATA = maint/codes.pc
$(pkgconfig_DATA): config.status

EXTRA_DIST += \
prepare.sh COPYRIGHT configure.ac uc-codes.cfg reformat.sh \
prepare.sh LICENSE.md configure.ac uc-codes.cfg reformat.sh \
misc/README misc/ptrn_loggp-2.4.6.patch CONTRIBUTORS.md \
README.md

Expand Down
5 changes: 1 addition & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
# CODES Discrete-event Simulation Framework

https://github.com/codes-org/codes/wiki
### New? Check out the Wiki for Installation, Tutorials, and Documentation: https://github.com/codes-org/codes/wiki

Discrete event driven simulation of HPC system architectures and subsystems has emerged as a productive and cost-effective means to evaluating potential HPC designs, along with capabilities for executing simulations of extreme scale systems. The goal of the CODES project is to use highly parallel simulation to explore the design of exascale storage/network architectures and distributed data-intensive science facilities.

Our simulations build upon the Rensselaer Optimistic Simulation System (ROSS), a discrete event simulation framework that allows simulations to be run in parallel, decreasing the simulation run time of massive simulations to hours. We are using ROSS to explore topics including large-scale storage systems, I/O workloads, HPC network fabrics, distributed science systems, and data-intensive computation environments.

The CODES project is a collaboration between the Mathematics and Computer Science department at Argonne National Laboratory and Rensselaer Polytechnic Institute. We collaborate with researchers at University of California at Davis to come up with novel methods for analysis and visualizations of large-scale event driven simulations. We also collaborate with Lawrence Livermore National Laboratory for modeling HPC interconnect systems.

Documentation can be found in the wiki:
https://github.com/codes-org/codes/wiki
12 changes: 5 additions & 7 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,9 @@
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.67])
AC_INIT([codes], [1.1.0], [http://trac.mcs.anl.gov/projects/codes/newticket],[],[http://www.mcs.anl.gov/projects/codes/])
AC_INIT([codes], [1.1.1], [http://trac.mcs.anl.gov/projects/codes/newticket],[],[http://www.mcs.anl.gov/projects/codes/])
LT_INIT


#WRAP SOME OPTION AROUND THIS - IT'S NOT REQUIRED FOR 99% OF CODES
AX_BOOST_BASE([1.66])

AC_CANONICAL_TARGET
AC_CANONICAL_SYSTEM
AC_CANONICAL_HOST
Expand All @@ -20,8 +16,8 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_CONFIG_SRCDIR([doc/BUILD_STEPS])
AC_CONFIG_HEADERS([codes_config.h])

AX_PROG_BISON([],[AC_MSG_WARN([Could not find bison])])
AX_PROG_FLEX([],[AC_MSG_WARN([Could not find flex])])
AX_PROG_BISON([],[AC_MSG_ERROR([could not find required package bison])])
AX_PROG_FLEX([],[AC_MSG_ERROR([could not find required package flex])])
AC_SUBST([BISON])
AC_SUBST([FLEX])

Expand Down Expand Up @@ -124,6 +120,7 @@ AC_ARG_WITH([online],[AS_HELP_STRING([--with-online@<:@=DIR@:>@],
[use_online=yes],[use_online=no])
if test "x${use_online}" != "xno" ; then
AM_CONDITIONAL(USE_ONLINE, true)
AX_BOOST_BASE([1.66])
AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
PKG_CHECK_MODULES_STATIC([ARGOBOTS], [argobots], [],
[AC_MSG_ERROR([Could not find working argobots installation via pkg-config])])
Expand Down Expand Up @@ -232,5 +229,6 @@ AC_OUTPUT([maint/codes.pc])
AC_OUTPUT([src/network-workloads/conf/dragonfly-custom/modelnet-test-dragonfly-1728-nodes.conf])
AC_OUTPUT([src/network-workloads/conf/dragonfly-plus/modelnet-test-dragonfly-plus.conf])
AC_OUTPUT([src/network-workloads/conf/dragonfly-dally/modelnet-test-dragonfly-dally.conf])
AC_OUTPUT([doc/example/tutorial-ping-pong.conf])


4 changes: 4 additions & 0 deletions doc/Makefile.subdir
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,11 @@ noinst_PROGRAMS += \
doc/example/example \
doc/example_heterogeneous/example

bin_PROGRAMS += doc/example/tutorial-synthetic-ping-pong

doc_example_example_SOURCES = doc/example/example.c
doc_example_heterogeneous_example_SOURCES = doc/example_heterogeneous/example.c
doc_example_tutorial_synthetic_ping_pong_SOURCES = doc/example/tutorial-synthetic-ping-pong.c

EXTRA_DIST += \
doc/BUILD_STEPS \
Expand All @@ -15,6 +18,7 @@ EXTRA_DIST += \
doc/codes-best-practices.tex \
doc/Makefile \
doc/example/example.conf \
doc/example/tutorial-ping-pong.conf \
doc/example_heterogeneous/example.conf \
doc/example_heterogeneous/example_torus.conf \
doc/example_heterogeneous/README \
Expand Down
File renamed without changes.
53 changes: 53 additions & 0 deletions doc/example/tutorial-ping-pong.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
LPGROUPS
{
MODELNET_GRP
{
repetitions="36";
# name of this lp changes according to the model
nw-lp="2";
# these lp names will be the same for dragonfly-custom model
modelnet_dragonfly_dally="2";
modelnet_dragonfly_dally_router="1";
}
}
PARAMS
{
# packet size in the network
packet_size="4096";
modelnet_order=( "dragonfly_dally","dragonfly_dally_router" );
# scheduler options
modelnet_scheduler="fcfs";
# chunk size in the network (when chunk size = packet size, packets will not be
# divided into chunks)
chunk_size="4096";
# modelnet_scheduler="round-robin";
# number of routers in group
num_routers="4";
# number of groups in the network
num_groups="9";
# buffer size in bytes for local virtual channels
local_vc_size="16384";
#buffer size in bytes for global virtual channels
global_vc_size="16384";
#buffer size in bytes for compute node virtual channels
cn_vc_size="32768";
#bandwidth in GiB/s for local channels
local_bandwidth="2.0";
# bandwidth in GiB/s for global channels
global_bandwidth="2.0";
# bandwidth in GiB/s for compute node-router channels
cn_bandwidth="2.0";
# ROSS message size
message_size="736";
# number of compute nodes connected to router, dictated by dragonfly config
# file
num_cns_per_router="2";
# number of global channels per router
num_global_channels="2";
# network config file for intra-group connections
intra-group-connections="../src/network-workloads/conf/dragonfly-dally/dfdally-72-intra";
# network config file for inter-group connections
inter-group-connections="../src/network-workloads/conf/dragonfly-dally/dfdally-72-inter";
# routing protocol to be used
routing="prog-adaptive";
}
53 changes: 53 additions & 0 deletions doc/example/tutorial-ping-pong.conf.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
LPGROUPS
{
MODELNET_GRP
{
repetitions="36";
# name of this lp changes according to the model
nw-lp="2";
# these lp names will be the same for dragonfly-custom model
modelnet_dragonfly_dally="2";
modelnet_dragonfly_dally_router="1";
}
}
PARAMS
{
# packet size in the network
packet_size="4096";
modelnet_order=( "dragonfly_dally","dragonfly_dally_router" );
# scheduler options
modelnet_scheduler="fcfs";
# chunk size in the network (when chunk size = packet size, packets will not be
# divided into chunks)
chunk_size="4096";
# modelnet_scheduler="round-robin";
# number of routers in group
num_routers="4";
# number of groups in the network
num_groups="9";
# buffer size in bytes for local virtual channels
local_vc_size="16384";
#buffer size in bytes for global virtual channels
global_vc_size="16384";
#buffer size in bytes for compute node virtual channels
cn_vc_size="32768";
#bandwidth in GiB/s for local channels
local_bandwidth="2.0";
# bandwidth in GiB/s for global channels
global_bandwidth="2.0";
# bandwidth in GiB/s for compute node-router channels
cn_bandwidth="2.0";
# ROSS message size
message_size="736";
# number of compute nodes connected to router, dictated by dragonfly config
# file
num_cns_per_router="2";
# number of global channels per router
num_global_channels="2";
# network config file for intra-group connections
intra-group-connections="@abs_srcdir@/../../src/network-workloads/conf/dragonfly-dally/dfdally-72-intra";
# network config file for inter-group connections
inter-group-connections="@abs_srcdir@/../../src/network-workloads/conf/dragonfly-dally/dfdally-72-inter";
# routing protocol to be used
routing="prog-adaptive";
}
Loading