Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
N
NP_TMcode
Manage
Activity
Members
Plan
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container registry
Analyze
Contributor analytics
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Giacomo Mulas
NP_TMcode
Commits
3c7665e8
Commit
3c7665e8
authored
2 months ago
by
Giovanni La Mura
Browse files
Options
Downloads
Patches
Plain Diff
Add NVTX markers to trapping functions
parent
8d000b81
No related branches found
No related tags found
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/trapping/cfrfme.cpp
+61
-1
61 additions, 1 deletion
src/trapping/cfrfme.cpp
src/trapping/clffft.cpp
+10
-0
10 additions, 0 deletions
src/trapping/clffft.cpp
with
71 additions
and
1 deletion
src/trapping/cfrfme.cpp
+
61
−
1
View file @
3c7665e8
...
@@ -105,6 +105,9 @@ void frfme(string data_file, string output_path) {
...
@@ -105,6 +105,9 @@ void frfme(string data_file, string output_path) {
int
wsum_size
;
int
wsum_size
;
// End of vector size variables
// End of vector size variables
if
(
jlmf
!=
1
)
{
if
(
jlmf
!=
1
)
{
#ifdef USE_NVTX
nvtxRangePush
(
"frfme() with jlmf != 1"
);
#endif
int
nxv
,
nyv
,
nzv
;
int
nxv
,
nyv
,
nzv
;
if
(
tfrfme
==
NULL
)
tfrfme
=
TFRFME
::
from_binary
(
tfrfme_name
,
"HDF5"
);
if
(
tfrfme
==
NULL
)
tfrfme
=
TFRFME
::
from_binary
(
tfrfme_name
,
"HDF5"
);
if
(
tfrfme
!=
NULL
)
{
if
(
tfrfme
!=
NULL
)
{
...
@@ -147,7 +150,16 @@ void frfme(string data_file, string output_path) {
...
@@ -147,7 +150,16 @@ void frfme(string data_file, string output_path) {
printf
(
"ERROR: could not open TFRFME file.
\n
"
);
printf
(
"ERROR: could not open TFRFME file.
\n
"
);
}
}
nks
=
nkv
-
1
;
nks
=
nkv
-
1
;
}
else
{
// label 16
#ifdef USE_NVTX
nvtxRangePop
();
#endif
}
else
{
// label 16; jlfm = 1
#ifdef USE_NVTX
nvtxRangePush
(
"frfme() with jlmf == 1"
);
#endif
#ifdef USE_NVTX
nvtxRangePush
(
"Setup operations"
);
#endif
int
nksh
,
nrsh
,
nxsh
,
nysh
,
nzsh
;
int
nksh
,
nrsh
,
nxsh
,
nysh
,
nzsh
;
str_target
=
file_lines
[
last_read_line
++
];
str_target
=
file_lines
[
last_read_line
++
];
for
(
int
cli
=
0
;
cli
<
7
;
cli
++
)
{
for
(
int
cli
=
0
;
cli
<
7
;
cli
++
)
{
...
@@ -183,6 +195,9 @@ void frfme(string data_file, string output_path) {
...
@@ -183,6 +195,9 @@ void frfme(string data_file, string output_path) {
}
}
str_target
=
file_lines
[
last_read_line
++
];
str_target
=
file_lines
[
last_read_line
++
];
re
=
regex
(
"[eEmM]"
);
re
=
regex
(
"[eEmM]"
);
#ifdef USE_NVTX
nvtxRangePop
();
#endif
if
(
regex_search
(
str_target
,
m
,
re
))
{
if
(
regex_search
(
str_target
,
m
,
re
))
{
more
=
m
.
str
().
at
(
0
);
more
=
m
.
str
().
at
(
0
);
if
(
more
==
'm'
||
more
==
'M'
)
{
if
(
more
==
'm'
||
more
==
'M'
)
{
...
@@ -200,6 +215,9 @@ void frfme(string data_file, string output_path) {
...
@@ -200,6 +215,9 @@ void frfme(string data_file, string output_path) {
string
tedf_name
=
output_path
+
"/"
+
namef
+
".hd5"
;
string
tedf_name
=
output_path
+
"/"
+
namef
+
".hd5"
;
ScattererConfiguration
*
tedf
=
ScattererConfiguration
::
from_binary
(
tedf_name
,
"HDF5"
);
ScattererConfiguration
*
tedf
=
ScattererConfiguration
::
from_binary
(
tedf_name
,
"HDF5"
);
if
(
tedf
!=
NULL
)
{
if
(
tedf
!=
NULL
)
{
#ifdef USE_NVTX
nvtxRangePush
(
"TEDF data import"
);
#endif
int
iduml
,
idum
;
int
iduml
,
idum
;
iduml
=
tedf
->
number_of_spheres
;
iduml
=
tedf
->
number_of_spheres
;
idum
=
tedf
->
get_iog
(
iduml
-
1
);
idum
=
tedf
->
get_iog
(
iduml
-
1
);
...
@@ -223,6 +241,9 @@ void frfme(string data_file, string output_path) {
...
@@ -223,6 +241,9 @@ void frfme(string data_file, string output_path) {
xi
=
xip
;
xi
=
xip
;
}
}
// label 20
// label 20
#ifdef USE_NVTX
nvtxRangePop
();
#endif
delete
tedf
;
delete
tedf
;
double
wn
=
wp
/
3.0e8
;
double
wn
=
wp
/
3.0e8
;
vk
=
xi
*
wn
;
vk
=
xi
*
wn
;
...
@@ -243,6 +264,9 @@ void frfme(string data_file, string output_path) {
...
@@ -243,6 +264,9 @@ void frfme(string data_file, string output_path) {
fshmx
=
spd
*
(
rir
*
(
sqrt
(
uy
-
sthmx
*
sthmx
)
/
sqrt
(
uy
-
sthlmx
*
sthlmx
))
-
uy
);
fshmx
=
spd
*
(
rir
*
(
sqrt
(
uy
-
sthmx
*
sthmx
)
/
sqrt
(
uy
-
sthlmx
*
sthlmx
))
-
uy
);
}
}
// label 22
// label 22
#ifdef USE_NVTX
nvtxRangePush
(
"Memory data loading"
);
#endif
nlmmt
=
lm
*
(
lm
+
2
)
*
2
;
nlmmt
=
lm
*
(
lm
+
2
)
*
2
;
nks
=
nksh
*
2
;
nks
=
nksh
*
2
;
nkv
=
nks
+
1
;
nkv
=
nks
+
1
;
...
@@ -286,6 +310,12 @@ void frfme(string data_file, string output_path) {
...
@@ -286,6 +310,12 @@ void frfme(string data_file, string output_path) {
double
*
_yv
=
tfrfme
->
get_y
();
double
*
_yv
=
tfrfme
->
get_y
();
double
*
_zv
=
tfrfme
->
get_z
();
double
*
_zv
=
tfrfme
->
get_z
();
dcomplex
**
_wsum
=
tfrfme
->
get_matrix
();
dcomplex
**
_wsum
=
tfrfme
->
get_matrix
();
#ifdef USE_NVTX
nvtxRangePop
();
#endif
#ifdef USE_NVTX
nvtxRangePush
(
"Looped vector initialization"
);
#endif
for
(
int
i24
=
nxshpo
;
i24
<=
nxs
;
i24
++
)
{
for
(
int
i24
=
nxshpo
;
i24
<=
nxs
;
i24
++
)
{
_xv
[
i24
]
=
_xv
[
i24
-
1
]
+
delxyz
;
_xv
[
i24
]
=
_xv
[
i24
-
1
]
+
delxyz
;
_xv
[
nxv
-
i24
-
1
]
=
-
_xv
[
i24
];
_xv
[
nxv
-
i24
-
1
]
=
-
_xv
[
i24
];
...
@@ -304,7 +334,13 @@ void frfme(string data_file, string output_path) {
...
@@ -304,7 +334,13 @@ void frfme(string data_file, string output_path) {
vkv
[
i28
]
=
vkv
[
i28
-
1
]
+
delk
;
vkv
[
i28
]
=
vkv
[
i28
-
1
]
+
delk
;
vkv
[
nkv
-
i28
-
1
]
=
-
vkv
[
i28
];
vkv
[
nkv
-
i28
-
1
]
=
-
vkv
[
i28
];
}
// i28 loop
}
// i28 loop
#ifdef USE_NVTX
nvtxRangePop
();
#endif
if
(
tfrfme
!=
NULL
)
{
if
(
tfrfme
!=
NULL
)
{
#ifdef USE_NVTX
nvtxRangePush
(
"TFRFME initialization"
);
#endif
tfrfme
->
set_param
(
"vk"
,
vk
);
tfrfme
->
set_param
(
"vk"
,
vk
);
tfrfme
->
set_param
(
"exri"
,
exri
);
tfrfme
->
set_param
(
"exri"
,
exri
);
tfrfme
->
set_param
(
"an"
,
an
);
tfrfme
->
set_param
(
"an"
,
an
);
...
@@ -336,6 +372,12 @@ void frfme(string data_file, string output_path) {
...
@@ -336,6 +372,12 @@ void frfme(string data_file, string output_path) {
tt2
->
set_param
(
"nlmmt"
,
1.0
*
nlmmt
);
tt2
->
set_param
(
"nlmmt"
,
1.0
*
nlmmt
);
tt2
->
set_param
(
"nrvc"
,
1.0
*
nrvc
);
tt2
->
set_param
(
"nrvc"
,
1.0
*
nrvc
);
tt2
->
write_binary
(
temp_name2
,
"HDF5"
);
tt2
->
write_binary
(
temp_name2
,
"HDF5"
);
#ifdef USE_NVTX
nvtxRangePop
();
#endif
#ifdef USE_NVTX
nvtxRangePush
(
"j80 loop"
);
#endif
for
(
int
j80
=
jlmf
;
j80
<=
jlml
;
j80
++
)
{
for
(
int
j80
=
jlmf
;
j80
<=
jlml
;
j80
++
)
{
dcomplex
*
tt1_wk
=
tt1
->
get_vector
();
dcomplex
*
tt1_wk
=
tt1
->
get_vector
();
int
wk_index
=
0
;
int
wk_index
=
0
;
...
@@ -384,7 +426,13 @@ void frfme(string data_file, string output_path) {
...
@@ -384,7 +426,13 @@ void frfme(string data_file, string output_path) {
}
// iy70 loop
}
// iy70 loop
}
// iz75 loop
}
// iz75 loop
}
// j80 loop
}
// j80 loop
#ifdef USE_NVTX
nvtxRangePop
();
#endif
// label 88
// label 88
#ifdef USE_NVTX
nvtxRangePush
(
"Closing operations"
);
#endif
tfrfme
->
write_binary
(
tfrfme_name
,
"HDF5"
);
tfrfme
->
write_binary
(
tfrfme_name
,
"HDF5"
);
string
output_name
=
output_path
+
"/c_OFRFME"
;
string
output_name
=
output_path
+
"/c_OFRFME"
;
FILE
*
output
=
fopen
(
output_name
.
c_str
(),
"w"
);
FILE
*
output
=
fopen
(
output_name
.
c_str
(),
"w"
);
...
@@ -393,6 +441,9 @@ void frfme(string data_file, string output_path) {
...
@@ -393,6 +441,9 @@ void frfme(string data_file, string output_path) {
if
(
spd
>
0.0
)
fprintf
(
output
,
" FSHMX =%15.7lE
\n
"
,
fshmx
);
if
(
spd
>
0.0
)
fprintf
(
output
,
" FSHMX =%15.7lE
\n
"
,
fshmx
);
fprintf
(
output
,
" FRSH =%15.7lE
\n
"
,
frsh
);
fprintf
(
output
,
" FRSH =%15.7lE
\n
"
,
frsh
);
fclose
(
output
);
fclose
(
output
);
#ifdef USE_NVTX
nvtxRangePop
();
#endif
}
else
{
// Should never happen.
}
else
{
// Should never happen.
printf
(
"ERROR: could not open TFRFME file for output.
\n
"
);
printf
(
"ERROR: could not open TFRFME file for output.
\n
"
);
}
}
...
@@ -405,8 +456,14 @@ void frfme(string data_file, string output_path) {
...
@@ -405,8 +456,14 @@ void frfme(string data_file, string output_path) {
fprintf
(
output
,
" WRONG INPUT TAPE
\n
"
);
fprintf
(
output
,
" WRONG INPUT TAPE
\n
"
);
fclose
(
output
);
fclose
(
output
);
}
}
#ifdef USE_NVTX
nvtxRangePop
();
#endif
}
}
// label 45
// label 45
#ifdef USE_NVTX
nvtxRangePush
(
"frfme() memory clean"
);
#endif
if
(
tfrfme
!=
NULL
)
delete
tfrfme
;
if
(
tfrfme
!=
NULL
)
delete
tfrfme
;
delete
[]
file_lines
;
delete
[]
file_lines
;
if
(
tt2
!=
NULL
)
delete
tt2
;
if
(
tt2
!=
NULL
)
delete
tt2
;
...
@@ -416,6 +473,9 @@ void frfme(string data_file, string output_path) {
...
@@ -416,6 +473,9 @@ void frfme(string data_file, string output_path) {
}
}
if
(
wk
!=
NULL
)
delete
[]
wk
;
if
(
wk
!=
NULL
)
delete
[]
wk
;
if
(
tt1
!=
NULL
)
delete
tt1
;
if
(
tt1
!=
NULL
)
delete
tt1
;
#ifdef USE_NVTX
nvtxRangePop
();
#endif
printf
(
"FRFME: Done.
\n
"
);
printf
(
"FRFME: Done.
\n
"
);
#ifdef USE_NVTX
#ifdef USE_NVTX
nvtxRangePop
();
nvtxRangePop
();
...
...
This diff is collapsed.
Click to expand it.
src/trapping/clffft.cpp
+
10
−
0
View file @
3c7665e8
...
@@ -56,6 +56,10 @@
...
@@ -56,6 +56,10 @@
#include
"../include/tra_subs.h"
#include
"../include/tra_subs.h"
#endif
#endif
#ifdef USE_NVTX
#include
<nvtx3/nvToolsExt.h>
#endif
using
namespace
std
;
using
namespace
std
;
/*! \brief C++ implementation of LFFFT
/*! \brief C++ implementation of LFFFT
...
@@ -64,6 +68,9 @@ using namespace std;
...
@@ -64,6 +68,9 @@ using namespace std;
* \param output_path: `string` Directory to write the output files in.
* \param output_path: `string` Directory to write the output files in.
*/
*/
void
lffft
(
string
data_file
,
string
output_path
)
{
void
lffft
(
string
data_file
,
string
output_path
)
{
#ifdef USE_NVTX
nvtxRangePush
(
"Running lffft()"
);
#endif
const
dcomplex
uim
=
0.0
+
1.0
*
I
;
const
dcomplex
uim
=
0.0
+
1.0
*
I
;
const
double
sq2i
=
1.0
/
sqrt
(
2.0
);
const
double
sq2i
=
1.0
/
sqrt
(
2.0
);
const
dcomplex
sq2iti
=
sq2i
*
uim
;
const
dcomplex
sq2iti
=
sq2i
*
uim
;
...
@@ -476,4 +483,7 @@ void lffft(string data_file, string output_path) {
...
@@ -476,4 +483,7 @@ void lffft(string data_file, string output_path) {
delete
ccr
;
delete
ccr
;
delete
[]
file_lines
;
delete
[]
file_lines
;
printf
(
"LFFT: Done.
\n
"
);
printf
(
"LFFT: Done.
\n
"
);
#ifdef USE_NVTX
nvtxRangePop
();
#endif
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment