MPI: external libs info reflects MPI usage
parent
3cbadd5c82
commit
f630abf813
|
@ -87,6 +87,26 @@ openEMS_FDTD_MPI::~openEMS_FDTD_MPI()
|
||||||
m_Output=NULL;
|
m_Output=NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
string openEMS_FDTD_MPI::GetExtLibsInfo()
|
||||||
|
{
|
||||||
|
stringstream str;
|
||||||
|
|
||||||
|
str << openEMS::GetExtLibsInfo();
|
||||||
|
|
||||||
|
// MPI
|
||||||
|
str << "\t\t" << "MPI version: " << MPI_VERSION << "." << MPI_SUBVERSION << " -- compiled against: ";
|
||||||
|
#ifdef MPICH2_VERSION
|
||||||
|
str << "MPICH2 " MPICH2_VERSION << endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OMPI_MAJOR_VERSION
|
||||||
|
str << "openMPI: " OMPI_MAJOR_VERSION << "." << OMPI_MINOR_VERSION << "." << OMPI_RELEASE_VERSION << endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return str.str();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool openEMS_FDTD_MPI::parseCommandLineArgument( const char *argv )
|
bool openEMS_FDTD_MPI::parseCommandLineArgument( const char *argv )
|
||||||
{
|
{
|
||||||
if (!argv)
|
if (!argv)
|
||||||
|
|
|
@ -34,6 +34,8 @@ public:
|
||||||
|
|
||||||
virtual bool parseCommandLineArgument( const char *argv );
|
virtual bool parseCommandLineArgument( const char *argv );
|
||||||
|
|
||||||
|
static string GetExtLibsInfo();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
Operator_MPI* m_MPI_Op;
|
Operator_MPI* m_MPI_Op;
|
||||||
CSRectGrid* m_Original_Grid;
|
CSRectGrid* m_Original_Grid;
|
||||||
|
|
12
main.cpp
12
main.cpp
|
@ -63,7 +63,11 @@ int main(int argc, char *argv[])
|
||||||
cout << " | openEMS " << bits << " -- version " GIT_VERSION << endl;
|
cout << " | openEMS " << bits << " -- version " GIT_VERSION << endl;
|
||||||
cout << " | (C) 2010 Thorsten Liebig <thorsten.liebig@gmx.de> GPL license" << endl;
|
cout << " | (C) 2010 Thorsten Liebig <thorsten.liebig@gmx.de> GPL license" << endl;
|
||||||
cout << " -------------------------------------------------------------------- " << endl;
|
cout << " -------------------------------------------------------------------- " << endl;
|
||||||
|
#ifdef MPI_SUPPORT
|
||||||
|
cout << openEMS_FDTD_MPI::GetExtLibsInfo() << endl;
|
||||||
|
#else
|
||||||
cout << openEMS::GetExtLibsInfo() << endl;
|
cout << openEMS::GetExtLibsInfo() << endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (argc<=1)
|
if (argc<=1)
|
||||||
{
|
{
|
||||||
|
@ -75,12 +79,14 @@ int main(int argc, char *argv[])
|
||||||
cout << "\t--debug-boxes\t\tDump e.g. probe boxes to vtk file for debugging" << endl;
|
cout << "\t--debug-boxes\t\tDump e.g. probe boxes to vtk file for debugging" << endl;
|
||||||
cout << "\t--debug-CSX\t\tWrite CSX geometry file to debugCSX.xml" << endl;
|
cout << "\t--debug-CSX\t\tWrite CSX geometry file to debugCSX.xml" << endl;
|
||||||
cout << "\t--engine=<type>\t\tChoose engine type" << endl;
|
cout << "\t--engine=<type>\t\tChoose engine type" << endl;
|
||||||
cout << "\t\t--engine=fastest\t\tfastest available engine" << endl;
|
cout << "\t\t--engine=fastest\t\tfastest available engine (default)" << endl;
|
||||||
cout << "\t\t--engine=sse\t\t\tengine using sse vector extensions" << endl;
|
cout << "\t\t--engine=sse\t\t\tengine using sse vector extensions" << endl;
|
||||||
cout << "\t\t--engine=sse_compressed\t\tengine using compressed operator + sse vector extensions" << endl;
|
cout << "\t\t--engine=sse_compressed\t\tengine using compressed operator + sse vector extensions" << endl;
|
||||||
cout << "\t\t--engine=multithreaded\t\tengine using compressed operator + sse vector extensions + multithreading" << endl;
|
|
||||||
#ifdef MPI_SUPPORT
|
#ifdef MPI_SUPPORT
|
||||||
cout << "\t\t--engine=MPI\t\tengine using compressed operator + sse vector extensions + MPI parallel processing" << endl;
|
cout << "\t\t--engine=MPI\t\t\tengine using compressed operator + sse vector extensions + MPI parallel processing" << endl;
|
||||||
|
cout << "\t\t--engine=multithreaded\t\tengine using compressed operator + sse vector extensions + MPI + multithreading" << endl;
|
||||||
|
#else
|
||||||
|
cout << "\t\t--engine=multithreaded\t\tengine using compressed operator + sse vector extensions + multithreading" << endl;
|
||||||
#endif
|
#endif
|
||||||
cout << "\t--numThreads=<n>\tForce use n threads for multithreaded engine (needs: --engine=multithreaded)" << endl;
|
cout << "\t--numThreads=<n>\tForce use n threads for multithreaded engine (needs: --engine=multithreaded)" << endl;
|
||||||
cout << "\t--no-simulation\tonly run preprocessing; do not simulate" << endl;
|
cout << "\t--no-simulation\tonly run preprocessing; do not simulate" << endl;
|
||||||
|
|
Loading…
Reference in New Issue