Closed sebhtml closed 11 years ago
git bisect:
db99730370dc503c805bbf4eacaeea54fca65957 is the first bad commit
commit db99730370dc503c805bbf4eacaeea54fca65957
Author: Charles Joly Beauparlant <Charles.Joly-Beauparlant@crchul.ulaval.ca>
Date: Sat Feb 2 22:03:33 2013 -0500
Added an example plugin.
This plugin comes from RayPlatform-example.
The example is activated with the -example option. Will work without input sequences.
Signed-off-by: Charles Joly Beauparlant <Charles.Joly-Beauparlant@crchul.ulaval.ca>
Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
:040000 040000 44d7146fe2a08e54da4a6db5889b5faea97ce605 cc789fac2b8d5f2d844f21ed1e4c19c97b21072e M code
RayPlatform-example compiles fine on BGQ:
bgqdev-fen1-$ pwd /home/c/clumeq/sebhtml/software/sources/ray-from-git/RayPlatform-example
mpicxx distributedApplication.o TestPlugin.o Application.o RayPlatform/libRayPlatform.a -o distributedApplication -g
Files changed:
code/application_core/Machine.cpp | 4 +- code/application_core/Machine.h | 5 +- code/plugin_Example/Example.cpp | 273 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ code/plugin_Example/Example.h | 117 +++++++++++++++++++++++++++++++++++++++++++ code/plugin_Example/Makefile | 3 ++ code/plugin_MachineHelper/MachineHelper.cpp | 64 +++++++++++++---------- code/plugin_MachineHelper/MachineHelper.h | 9 ++--
This patch is a workaround:
diff --git a/code/application_core/Machine.cpp b/code/application_core/Machine.cpp
index dc5c184..2647425 100644
--- a/code/application_core/Machine.cpp
+++ b/code/application_core/Machine.cpp
@@ -814,7 +814,7 @@ void Machine::registerPlugins(){
m_computeCore.registerPlugin(&m_genomeNeighbourhood);
m_computeCore.registerPlugin(&m_ontologyPlugin);
m_computeCore.registerPlugin(&m_mock);
- m_computeCore.registerPlugin(&m_example);
+ //m_computeCore.registerPlugin(&m_example);
// resolve the symbols
// this is done here because we want to write a summary for
diff --git a/code/application_core/Machine.h b/code/application_core/Machine.h
index 65ea98c..8a4bd8d 100644
--- a/code/application_core/Machine.h
+++ b/code/application_core/Machine.h
@@ -64,7 +64,7 @@
#include <code/plugin_GenomeNeighbourhood/GenomeNeighbourhood.h>
#include <code/plugin_GeneOntology/GeneOntology.h>
#include <code/plugin_Mock/Mock.h>
-#include <code/plugin_Example/Example.h>
+//#include <code/plugin_Example/Example.h>
@@ -161,7 +161,7 @@ class Machine : public MiniRank{
EdgePurger m_edgePurger;
PhylogenyViewer m_phylogeny;
GeneOntology m_ontologyPlugin;
- Example m_example;
+ //Example m_example;
KmerAcademyBuilder m_kmerAcademyBuilder;
bool m_initialisedAcademy;
diff --git a/code/plugin_Example/Makefile b/code/plugin_Example/Makefile
index 50b1ba4..ccdaaa5 100644
--- a/code/plugin_Example/Makefile
+++ b/code/plugin_Example/Makefile
@@ -1,3 +1,3 @@
Example-y += code/plugin_Example/Example.o
-obj-y += $(Example-y)
+#obj-y += $(Example-y)
diff --git a/code/plugin_MachineHelper/MachineHelper.h b/code/plugin_MachineHelper/MachineHelper.h
index c2b94d6..a435154 100644
--- a/code/plugin_MachineHelper/MachineHelper.h
+++ b/code/plugin_MachineHelper/MachineHelper.h
@@ -25,7 +25,7 @@
#include <code/plugin_Mock/Parameters.h>
#include <code/plugin_FusionData/FusionData.h>
#include <code/plugin_NetworkTest/NetworkTest.h>
-#include <code/plugin_Example/Example.h>
+//#include <code/plugin_Example/Example.h>
#include <code/plugin_Partitioner/Partitioner.h>
#include <code/plugin_SequencesLoader/SequencesLoader.h>
#include <code/plugin_SeedingData/SeedingData.h>
Simplier patch:
diff --git a/code/plugin_Example/Example.cpp b/code/plugin_Example/Example.cpp
index d3ee9a4..8bedb28 100644
--- a/code/plugin_Example/Example.cpp
+++ b/code/plugin_Example/Example.cpp
@@ -25,6 +25,7 @@
__CreatePlugin(Example);
+#if 0
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_A);
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_B);
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_C);
@@ -36,6 +37,7 @@ __CreateSlaveModeAdapter(Example,RAY_SLAVE_MODE_STEP_C);
__CreateMessageTagAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__CreateMessageTagAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
Example::Example(){
m_doneA=false;
m_doneB=false;
@@ -145,6 +147,7 @@ void Example::call_RAY_MPI_TAG_STOP_AND_DIE(Message*message){
void Example::registerPlugin(ComputeCore*core){
+#if 0
/** register the m_plugin with the core **/
m_plugin=core->allocatePluginHandle();
@@ -239,10 +242,12 @@ void Example::registerPlugin(ComputeCore*core){
/** other plugins have to resolve the symbol. **/
void*object=&m_doneA;
core->setObjectSymbol(m_plugin,object,"BooleanState");
+#endif
}
void Example::resolveSymbols(ComputeCore*core){
+#if 0
// here, we resolve symbols owned by other m_plugins
// but needed by the current m_plugin
// obviously, this is not needed here because
@@ -270,4 +275,5 @@ void Example::resolveSymbols(ComputeCore*core){
__BindAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__BindAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
}
diff --git a/code/plugin_Example/Example.h b/code/plugin_Example/Example.h
index 01fb444..cf716c2 100644
--- a/code/plugin_Example/Example.h
+++ b/code/plugin_Example/Example.h
@@ -28,6 +28,7 @@
__DeclarePlugin(Example);
+#if 0
__DeclareMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_A);
__DeclareMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_B);
__DeclareMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_C);
@@ -38,6 +39,7 @@ __DeclareSlaveModeAdapter(Example,RAY_SLAVE_MODE_STEP_C);
__DeclareMessageTagAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__DeclareMessageTagAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
/**
* The plugin Example
@@ -46,6 +48,7 @@ __DeclareMessageTagAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
**/
class Example: public CorePlugin{
+#if 0
__AddAdapter(Example,RAY_MASTER_MODE_STEP_A);
__AddAdapter(Example,RAY_MASTER_MODE_STEP_B);
__AddAdapter(Example,RAY_MASTER_MODE_STEP_C);
@@ -56,6 +59,7 @@ class Example: public CorePlugin{
__AddAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__AddAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
/**
* A list of master modes
code/plugin_Example/Example.cpp | 6 ++++++
code/plugin_Example/Example.h | 2 ++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/code/plugin_Example/Example.cpp b/code/plugin_Example/Example.cpp
index d3ee9a4..8bedb28 100644
--- a/code/plugin_Example/Example.cpp
+++ b/code/plugin_Example/Example.cpp
@@ -25,6 +25,7 @@
__CreatePlugin(Example);
+#if 0
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_A);
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_B);
__CreateMasterModeAdapter(Example,RAY_MASTER_MODE_STEP_C);
@@ -36,6 +37,7 @@ __CreateSlaveModeAdapter(Example,RAY_SLAVE_MODE_STEP_C);
__CreateMessageTagAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__CreateMessageTagAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
Example::Example(){
m_doneA=false;
m_doneB=false;
@@ -145,6 +147,7 @@ void Example::call_RAY_MPI_TAG_STOP_AND_DIE(Message*message){
void Example::registerPlugin(ComputeCore*core){
+#if 0
/** register the m_plugin with the core **/
m_plugin=core->allocatePluginHandle();
@@ -239,10 +242,12 @@ void Example::registerPlugin(ComputeCore*core){
/** other plugins have to resolve the symbol. **/
void*object=&m_doneA;
core->setObjectSymbol(m_plugin,object,"BooleanState");
+#endif
}
void Example::resolveSymbols(ComputeCore*core){
+#if 0
// here, we resolve symbols owned by other m_plugins
// but needed by the current m_plugin
// obviously, this is not needed here because
@@ -270,4 +275,5 @@ void Example::resolveSymbols(ComputeCore*core){
__BindAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__BindAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
}
diff --git a/code/plugin_Example/Example.h b/code/plugin_Example/Example.h
index 01fb444..99a176d 100644
--- a/code/plugin_Example/Example.h
+++ b/code/plugin_Example/Example.h
@@ -46,6 +46,7 @@ __DeclareMessageTagAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
**/
class Example: public CorePlugin{
+#if 0
__AddAdapter(Example,RAY_MASTER_MODE_STEP_A);
__AddAdapter(Example,RAY_MASTER_MODE_STEP_B);
__AddAdapter(Example,RAY_MASTER_MODE_STEP_C);
@@ -56,6 +57,7 @@ class Example: public CorePlugin{
__AddAdapter(Example,RAY_MPI_TAG_STOP_AND_DIE);
__AddAdapter(Example,RAY_MPI_TAG_TIME_BOMB);
+#endif
/**
* A list of master modes
It was the compiler !
643e3b46f50e65eb719b925d73c1a3f691ba76c1
On the IBM Blue Gene/Q:
module load mpich2 make CXXFLAGS="-qminimaltoc -g -O3 -qarch=qp -qtune=qp "