Skip to content

Commit db5b73a

Browse files
author
Roberto Di Remigio
committed
Add more timing checkpoints to the interface
1 parent 5d6b306 commit db5b73a

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

src/interface/Meddle.cpp

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,9 @@ size_t pcmsolver_get_irreducible_cavity_size(pcmsolver_context_t * context)
9393

9494
void pcmsolver_get_centers(pcmsolver_context_t * context, double centers[])
9595
{
96+
TIMER_ON("pcmsolver_get_centers");
9697
AS_TYPE(pcm::Meddle, context)->getCenters(centers);
98+
TIMER_OFF("pcmsolver_get_centers");
9799
}
98100

99101
void pcmsolver_get_center(pcmsolver_context_t * context, int its, double center[])
@@ -111,15 +113,19 @@ void pcmsolver_compute_asc(pcmsolver_context_t * context,
111113
const char * asc_name,
112114
int irrep)
113115
{
116+
TIMER_ON("pcmsolver_compute_asc");
114117
AS_TYPE(pcm::Meddle, context)->computeASC(mep_name, asc_name, irrep);
118+
TIMER_OFF("pcmsolver_compute_asc");
115119
}
116120

117121
void pcmsolver_compute_response_asc(pcmsolver_context_t * context,
118122
const char * mep_name,
119123
const char * asc_name,
120124
int irrep)
121125
{
126+
TIMER_ON("pcmsolver_compute_response_asc");
122127
AS_TYPE(pcm::Meddle, context)->computeResponseASC(mep_name, asc_name, irrep);
128+
TIMER_OFF("pcmsolver_compute_response_asc");
123129
}
124130

125131
double pcmsolver_compute_polarization_energy(pcmsolver_context_t * context,
@@ -132,13 +138,17 @@ double pcmsolver_compute_polarization_energy(pcmsolver_context_t * context,
132138
void pcmsolver_get_surface_function(pcmsolver_context_t * context,
133139
size_t size, double values[], const char * name)
134140
{
141+
TIMER_ON("pcmsolver_get_surface_function");
135142
AS_TYPE(pcm::Meddle, context)->getSurfaceFunction(size, values, name);
143+
TIMER_OFF("pcmsolver_get_surface_function");
136144
}
137145

138146
void pcmsolver_set_surface_function(pcmsolver_context_t * context,
139147
size_t size, double values[], const char * name)
140148
{
149+
TIMER_ON("pcmsolver_set_surface_function");
141150
AS_TYPE(pcm::Meddle, context)->setSurfaceFunction(size, values, name);
151+
TIMER_OFF("pcmsolver_set_surface_function");
142152
}
143153

144154
void pcmsolver_save_surface_functions(pcmsolver_context_t * context)
@@ -166,10 +176,23 @@ namespace pcm {
166176
charges[], double coordinates[], int symmetry_info[], const PCMInput & host_input)
167177
: hasDynamic_(false)
168178
{
179+
TIMER_ON("Meddle::initInput");
169180
initInput(input_reading, nr_nuclei, charges, coordinates, symmetry_info, host_input);
181+
TIMER_OFF("Meddle::initInput");
182+
183+
TIMER_ON("Meddle::initCavity");
170184
initCavity();
185+
TIMER_OFF("Meddle::initCavity");
186+
187+
TIMER_ON("Meddle::initStaticSolver");
171188
initStaticSolver();
172-
if (input_.isDynamic()) initDynamicSolver();
189+
TIMER_OFF("Meddle::initStaticSolver");
190+
191+
if (input_.isDynamic()) {
192+
TIMER_ON("Meddle::initDynamicSolver");
193+
initDynamicSolver();
194+
TIMER_OFF("Meddle::initDynamicSolver");
195+
}
173196
// Reserve space for Tot-MEP/ASC, Nuc-MEP/ASC and Ele-MEP/ASC
174197
functions_.reserve(12);
175198
}
@@ -193,7 +216,9 @@ namespace pcm {
193216

194217
void Meddle::getCenters(double centers[]) const
195218
{
219+
TIMER_ON("Meddle::getCenters");
196220
Eigen::Map<Eigen::Matrix3Xd>(centers, 3, cavity_->size()) = cavity_->elementCenter();
221+
TIMER_OFF("Meddle::getCenters");
197222
}
198223

199224
void Meddle::getCenter(int its, double center[]) const

0 commit comments

Comments
 (0)