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

51 small adaptations of run script output and plot for scaling experiment #53

Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
9190ebd
Reordering and -naming timer output
mknaranja Oct 6, 2023
eb0e7e0
- introduced new alpha for ZoniShifted
mknaranja Oct 9, 2023
620016e
semicolon
mknaranja Oct 9, 2023
f50d3bd
variable not renamed and brackets forgotten
mknaranja Oct 9, 2023
aa0afc6
.
mknaranja Oct 10, 2023
86de716
likwid regions
mknaranja Oct 10, 2023
5e68b41
slight changes, likwid with regions, benchmark
mknaranja Oct 11, 2023
c4a3724
parameters corrected
mknaranja Oct 11, 2023
4ed3d04
output
mknaranja Oct 11, 2023
ad2d1d4
WIP: redesign read output
mknaranja Oct 11, 2023
4d4b6cc
choix pour r_jump; A discuter: Rmax ne peut pas être ajouter, sinon c…
Philou31 Oct 12, 2023
ed1cd20
read output rewritten
mknaranja Oct 12, 2023
b34c135
Merge branch '51-small-adaptations-of-run-script-output-and-plot-for-…
mknaranja Oct 12, 2023
56c9e78
refining locations
mknaranja Oct 12, 2023
8b1dd39
cleanup readout, start plotting
mknaranja Oct 12, 2023
d7c2366
renaming of timing counter and plotting
mknaranja Oct 12, 2023
6e2d07f
plotting possible, fine tuning needed
mknaranja Oct 13, 2023
da8e599
plotting and documentation
mknaranja Oct 13, 2023
4292144
documentation
mknaranja Oct 13, 2023
8bb736a
reading and plotting for paper
mknaranja Oct 13, 2023
76d6c16
renamed
mknaranja Nov 9, 2023
e1090ba
weak scaling
mknaranja Nov 9, 2023
2bb333d
Jupyter notebook with functionc to plot the solutions, plot the coeff…
Philou31 Nov 30, 2023
a585733
cleared output and small changes
mknaranja Nov 30, 2023
5e7e9d1
corrected file name access
mknaranja Dec 1, 2023
bc8c78a
add dpi
mknaranja Dec 4, 2023
496c0e1
minor details
mknaranja Dec 7, 2023
4a844de
slight changes
mknaranja Dec 11, 2023
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
273 changes: 273 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,273 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/.pnp
.pnp.js

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
*.xls
*.xlsx
*.zip
*.tar.gz
*.csv
*slurm*

# Created by https://www.gitignore.io/api/c++,node,python
# Edit at https://www.gitignore.io/?templates=c++,node,python

### C++ ###
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

### Node ###
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# next.js build output
.next

# nuxt.js build output
.nuxt

# rollup.js default build output
dist/

# Uncomment the public line if your project uses Gatsby
# https://nextjs.org/blog/next-9-1#public-directory-support
# https://create-react-app.dev/docs/using-the-public-folder/#docsNav
# public

# Storybook build outputs
.out
.storybook-out

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# Temporary folders
tmp/
temp/

### Python ###
# Pycharm
.idea

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions

# Distribution / packaging
.Python
build/
develop-eggs/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
_skbuild/

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# pyenv
.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# Mr Developer
.mr.developer.cfg
.project
.pydevproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# Docs
docs/html
docs/xml

# End of https://www.gitignore.io/api/c++,node,python
14 changes: 14 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ project(GMGPolar VERSION 1.0.0)

option(GMGPOLAR_BUILD_TESTS "Build GMGPolar unit tests." ON)
option(GMGPOLAR_USE_MUMPS "Use MUMPS to compute matrix factorizations." OFF)
option(GMGPOLAR_USE_LIKWID "Use LIKWID to measure code (regions)." OFF)


set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
Expand Down Expand Up @@ -42,6 +44,18 @@ configure_file(${CMAKE_SOURCE_DIR}/include/config_internal.h.in ${CMAKE_SOURCE_D
target_include_directories(gmgpolar_simulation PRIVATE ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/include/test_cases )
target_include_directories(GMGPolar PRIVATE ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/include/test_cases )

if(GMGPOLAR_USE_LIKWID)

find_package(LIKWID REQUIRED)

target_include_directories(GMGPolar PUBLIC ${LIKWID_INCLUDE_DIRS})
target_link_libraries(GMGPolar PUBLIC ${LIKWID_LIBRARIES})
target_compile_definitions(GMGPolar PUBLIC "-DLIKWID_PERFMON")

endif()



if(GMGPOLAR_USE_MUMPS)

set(INC_DIRS
Expand Down
1 change: 1 addition & 0 deletions include/config_internal.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,6 @@
#define GMGPOLAR_CONFIG_INTERNAL_H

#cmakedefine GMGPOLAR_USE_MUMPS
#cmakedefine GMGPOLAR_USE_LIKWID

#endif // GMGPOLAR_CONFIG_INTERNAL_H
4 changes: 2 additions & 2 deletions include/constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -316,8 +316,8 @@ enum dcontrols
rel_red_conv,
/*! \brief Timings
*/
t_coeff,
t_arr_art_att,
t_arr_art_att, // Evaluation of a^{rr}, a^{rt}, and a^{tt}
t_coeff, // Evaluation of alpha and beta (subcounter of t_arr_art_att)
t_sol,
t_detDFinv,
t_trafo,
Expand Down
38 changes: 23 additions & 15 deletions include/gmgpolar.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,16 @@
#include "constants.h"
#include "level.h"
#include "gyro.h"
#ifdef GMGPOLAR_USE_LIKWID
#include <likwid-marker.h>
#endif

class gmgpolar
{
public:
/*******************************************************************************
* Attributes
******************************************************************************/
/*******************************************************************************
* Attributes
******************************************************************************/
/***************************************************************************
* Grid levels
**************************************************************************/
Expand All @@ -67,25 +70,30 @@ class gmgpolar
std::vector<double> nrm_inf_res;

/* execution times */
// Setup
double t_setup; // prepare_op_levels
// Subcounters of Setup
double t_build; // build A and RHS
double t_facto_Ac; // factorization of coarse operator
double t_build_P; // build coarse nodes, line splitting and P
double t_build_Asc; // build Asc and Asc_ortho
double t_facto_Asc; // factorization of Asc
double t_total; // multigrid_cycle_extrapol
// Multigrid cycle
double t_total_mgcycle; // multigrid_cycle_extrapol
// Subcounter of Multigrid cycle
double t_smoothing; // pre- and post-smoothing (including solve Asc)
double t_residual; // factorization of Asc
double t_residual; // computation of the residual
double t_restriction; // restriction
double t_Ac; // solve coarse operator
double t_prolongation; // prolongation and coarse grid correction

double t_fine_residual; // computation of residual on level 0 (init and after iteration)
double t_error; // computation of final error
double t_applyA; // apply the operator A, method apply_A
double t_applyA; // apply the operator A, method apply_A

/*******************************************************************************
* Methods
******************************************************************************/
/*******************************************************************************
* Methods
******************************************************************************/
gmgpolar();
~gmgpolar();

Expand All @@ -104,13 +112,13 @@ class gmgpolar
double compute_backwarderror();

private:
/*******************************************************************************
* Attributes
******************************************************************************/
/*******************************************************************************
* Attributes
******************************************************************************/

/*******************************************************************************
* Methods
******************************************************************************/
/*******************************************************************************
* Methods
******************************************************************************/
};

#endif // GMGPOLAR_HXX
Loading