source: src/Fragmentation/Automation/Makefile.am@ 9a6b895

Action_Thermostats Add_AtomRandomPerturbation Add_FitFragmentPartialChargesAction Add_RotateAroundBondAction Add_SelectAtomByNameAction Added_ParseSaveFragmentResults AddingActions_SaveParseParticleParameters Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_ParticleName_to_Atom Adding_StructOpt_integration_tests AtomFragments Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.5.4 Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator CombiningParticlePotentialParsing Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_BoundInBox_CenterInBox_MoleculeActions Fix_ChargeSampling_PBC Fix_ChronosMutex Fix_FitPartialCharges Fix_FitPotential_needs_atomicnumbers Fix_ForceAnnealing Fix_IndependentFragmentGrids Fix_ParseParticles Fix_ParseParticles_split_forward_backward_Actions Fix_PopActions Fix_QtFragmentList_sorted_selection Fix_Restrictedkeyset_FragmentMolecule Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns Fix_fitting_potentials Fixes ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion FragmentAction_writes_AtomFragments FragmentMolecule_checks_bonddegrees GeometryObjects Gui_Fixes Gui_displays_atomic_force_velocity ImplicitCharges IndependentFragmentGrids IndependentFragmentGrids_IndividualZeroInstances IndependentFragmentGrids_IntegrationTest IndependentFragmentGrids_Sole_NN_Calculation JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix MoreRobust_FragmentAutomation ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PdbParser_setsAtomName PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks Rewrite_FitPartialCharges RotateToPrincipalAxisSystem_UndoRedo SaturateAtoms_findBestMatching SaturateAtoms_singleDegree StoppableMakroAction Subpackage_CodePatterns Subpackage_JobMarket Subpackage_LinearAlgebra Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg Switchable_LogView ThirdParty_MPQC_rebuilt_buildsystem TrajectoryDependenant_MaxOrder TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps TremoloParser_setsAtomName Ubuntu_1604_changes stable
Last change on this file since 9a6b895 was f45c08, checked in by Frederik Heber <heber@…>, 13 years ago

Implemented OperationQueue that takes care of AsyncOperations.

  • this is preparatory to fixing FragmentScheduler: When more than one job is placed in the JobQueue at the same time and multiple workers are idling, then also multiple SendJobToWorkerOperations are required. So far there is only a single instance, hence it is overwritten and only the last worker gets its correct job.
  • also added unit test on functionality of OperationQueue.
  • Property mode set to 100644
File size: 6.2 KB
RevLine 
[d0b3aca]1# PLEASE adhere to the alphabetical ordering in this Makefile!
2# Also indentation by a single tab
3
[d7bb9b1]4INCLUDES = -I$(top_srcdir)/LinearAlgebra/src -I$(top_srcdir)/src
[cc276e]5
[d0b3aca]6MOSTLYCLEANFILES =
7bin_PROGRAMS =
[b5ebb5]8TESTS =
9check_PROGRAMS =
10noinst_PROGRAMS =
[cde0fe]11noinst_LTLIBRARIES =
12
13# PLEASE adhere to the alphabetical ordering in this Makefile!
14# Also indentation by a single tab
15
16FRAGMENTJOBSSOURCE = \
17 FragmentQueue.cpp \
[f0834d]18 JobId.cpp \
[7670865]19 Jobs/FragmentJob.cpp \
[cc276e]20 Jobs/MPQCCommandJob.cpp \
21 Jobs/MPQCCommandJob_MPQCData.cpp \
[d920b9]22 Jobs/SystemCommandJob.cpp \
[7670865]23 Results/FragmentResult.cpp
[cde0fe]24
25FRAGMENTJOBSHEADER = \
26 FragmentQueue.hpp \
[f0834d]27 JobId.hpp \
[7670865]28 Jobs/FragmentJob.hpp \
[cc276e]29 Jobs/MPQCCommandJob.hpp \
30 Jobs/MPQCCommandJob_MPQCData.hpp \
[d920b9]31 Jobs/SystemCommandJob.hpp \
[7670865]32 Results/FragmentResult.hpp
[cde0fe]33
34noinst_LTLIBRARIES += libMolecuilderFragmentJobs.la
35libMolecuilderFragmentJobs_la_includedir = $(includedir)/MoleCuilder/Fragmentation/Automation/
[1dc209]36nobase_libMolecuilderFragmentJobs_la_include_HEADERS = $(FRAGMENTJOBSHEADER)
[cc276e]37libMolecuilderFragmentJobs_la_CPPFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS}
38libMolecuilderFragmentJobs_la_LDFLAGS = $(AM_LDFLAGS)
[1dc209]39libMolecuilderFragmentJobs_la_SOURCES = $(FRAGMENTJOBSSOURCE)
[d920b9]40libMolecuilderFragmentJobs_la_LIBADD = \
41 $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_FILESYSTEM_LIBS) \
42 $(BOOST_IOSTREAMS_LDFLAGS) $(BOOST_IOSTREAMS_LIBS)
[cde0fe]43
[50d095]44FRAGMENTATIONOPERATIONSSOURCE = \
45 Operations/AsyncOperation.cpp \
[f45c08]46 Operations/OperationQueue.cpp \
[50d095]47 Operations/SyncOperation.cpp \
48 Operations/Controllers/CheckResultsOperation.cpp \
49 Operations/Controllers/GetNextJobIdOperation.cpp \
50 Operations/Controllers/ReceiveResultsOperation.cpp \
51 Operations/Controllers/SendJobsOperation.cpp \
52 Operations/Controllers/ShutdownOperation.cpp \
53 Operations/Servers/SendJobToWorkerOperation.cpp \
54 Operations/Servers/ShutdownWorkerOperation.cpp \
55 Operations/Workers/EnrollInPoolOperation.cpp \
56 Operations/Workers/ObtainJobOperation.cpp \
57 Operations/Workers/RemoveFromPoolOperation.cpp \
58 Operations/Workers/SubmitResultOperation.cpp
59
60FRAGMENTATIONOPERATIONSHEADER = \
[1dc209]61 ControllerChoices.hpp \
[50d095]62 Operations/AsyncOperation.hpp \
63 Operations/Operation.hpp \
[f45c08]64 Operations/OperationQueue.hpp \
[50d095]65 Operations/SyncOperation.hpp \
66 Operations/Controllers/CheckResultsOperation.hpp \
67 Operations/Controllers/GetNextJobIdOperation.hpp \
68 Operations/Controllers/ReceiveResultsOperation.hpp \
69 Operations/Controllers/SendJobsOperation.hpp \
70 Operations/Controllers/ShutdownOperation.hpp \
71 Operations/Servers/SendJobToWorkerOperation.hpp \
72 Operations/Servers/ShutdownWorkerOperation.hpp \
73 Operations/Workers/EnrollInPoolOperation.hpp \
74 Operations/Workers/ObtainJobOperation.hpp \
75 Operations/Workers/RemoveFromPoolOperation.hpp \
76 Operations/Workers/SubmitResultOperation.hpp \
[a8f54b6]77 WorkerChoices.hpp
[8d7917]78
[50d095]79noinst_LTLIBRARIES += libMolecuilderFragmentationOperations.la
80libMolecuilderFragmentationOperations_la_includedir = $(includedir)/MoleCuilder/Fragmentation/Automation/
81nobase_libMolecuilderFragmentationOperations_la_include_HEADERS = $(FRAGMENTATIONOPERATIONSHEADER)
82libMolecuilderFragmentationOperations_la_CXXFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS} $(BOOST_ASIO_DEBUG)
83libMolecuilderFragmentationOperations_la_SOURCES = $(FRAGMENTATIONOPERATIONSSOURCE)
[8d7917]84
85FRAGMENTATIONAUTOMATIONHELPERSOURCE = \
86 atexit.cpp \
[41c1b7]87 GlobalJobId.cpp \
88 Listener.cpp \
89 WorkerAddress.cpp
[8d7917]90
91FRAGMENTATIONAUTOMATIONHELPERHEADER = \
92 atexit.hpp \
[41c1b7]93 GlobalJobId.hpp \
94 Listener.hpp \
95 WorkerAddress.hpp
[cde0fe]96
[8d7917]97noinst_LTLIBRARIES += libMolecuilderFragmentationAutomationHelper.la
98libMolecuilderFragmentationAutomationHelper_la_includedir = $(includedir)/MoleCuilder/Fragmentation/Automation/
99nobase_libMolecuilderFragmentationAutomationHelper_la_include_HEADERS = $(FRAGMENTATIONAUTOMATIONHELPERHEADER)
100libMolecuilderFragmentationAutomationHelper_la_CXXFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS}
101libMolecuilderFragmentationAutomationHelper_la_SOURCES = $(FRAGMENTATIONAUTOMATIONHELPERSOURCE)
[b5ebb5]102
103include unittests/Makefile.am
[d0b3aca]104
105AM_LDFLAGS = -ldl ${BOOST_LDFLAGS}
106AM_CPPFLAGS = ${BOOST_CPPFLAGS} ${CodePatterns_CFLAGS}
107
[41c1b7]108bin_PROGRAMS += Controller PoolWorker Server
[db03d9]109
[8d7917]110CONTROLLERSOURCE = \
[d4885d]111 FragmentController.cpp \
[6ee809]112 Operations/OperationRegistry.cpp
[db03d9]113
114CONTROLLERHEADER = \
[8d7917]115 Connection.hpp \
[d4885d]116 FragmentController.hpp \
[6ee809]117 Operations/OperationRegistry.hpp
[d0b3aca]118
[41c1b7]119POOLWORKERSOURCE = \
120 Pool/PoolWorker.cpp
121
122POOLWORKERHEADER = \
123 Connection.hpp \
124 Pool/PoolWorker.hpp
125
[b05673]126SERVERSOURCE = \
[8036b7]127 FragmentScheduler.cpp \
[41c1b7]128 Pool/WorkerPool.cpp
[b05673]129
130SERVERHEADER = \
[af3aed]131 Connection.hpp \
[778abb]132 ControllerChoices.hpp \
[8036b7]133 FragmentScheduler.hpp \
[41c1b7]134 Pool/WorkerPool.hpp
[b05673]135
[7ca772]136Controller_SOURCES = $(CONTROLLERSOURCE) $(CONTROLLERHEADER) controller.cpp
137Controller_LDFLAGS = $(AM_LDFLAGS) $(BOOST_ASIO_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_THREAD_LDFLAGS) $(BOOST_SERIALIZATION_LDFLAGS)
138Controller_CXXFLAGS = $(AM_CPPFLAGS)
139Controller_LDADD = \
[8d7917]140 libMolecuilderFragmentationAutomationHelper.la \
[50d095]141 libMolecuilderFragmentationOperations.la \
[1dc209]142 libMolecuilderFragmentJobs.la \
[d7bb9b1]143 $(top_builddir)/src/libMolecuilderFragmentation.la \
144 $(top_builddir)/src/libMolecuilderHelpers.la \
[db03d9]145 $(BOOST_ASIO_LIBS) \
146 $(BOOST_SERIALIZATION_LIBS) \
147 $(BOOST_THREAD_LIBS) \
148 $(BOOST_SYSTEM_LIBS) \
149 ${CodePatterns_LIBS}
150
[41c1b7]151PoolWorker_SOURCES = $(POOLWORKERSOURCE) $(POOLWORKERHEADER) poolworker.cpp
152PoolWorker_LDFLAGS = $(AM_LDFLAGS) $(BOOST_ASIO_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_THREAD_LDFLAGS) $(BOOST_SERIALIZATION_LDFLAGS)
153PoolWorker_CXXFLAGS = $(AM_CPPFLAGS) $(BOOST_ASIO_DEBUG)
154PoolWorker_LDADD = \
[8d7917]155 libMolecuilderFragmentationAutomationHelper.la \
[50d095]156 libMolecuilderFragmentationOperations.la \
[1dc209]157 libMolecuilderFragmentJobs.la \
[72eaf7f]158 $(BOOST_ASIO_LIBS) \
159 $(BOOST_SERIALIZATION_LIBS) \
[d0b3aca]160 $(BOOST_THREAD_LIBS) \
[72eaf7f]161 $(BOOST_SYSTEM_LIBS) \
162 ${CodePatterns_LIBS}
163
[41c1b7]164Server_SOURCES = $(SERVERSOURCE) $(SERVERHEADER) Server.cpp
165Server_LDFLAGS = $(AM_LDFLAGS) $(BOOST_ASIO_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_THREAD_LDFLAGS) $(BOOST_SERIALIZATION_LDFLAGS)
166Server_CXXFLAGS = $(AM_CPPFLAGS)
167Server_LDADD = \
[8d7917]168 libMolecuilderFragmentationAutomationHelper.la \
[50d095]169 libMolecuilderFragmentationOperations.la \
[1dc209]170 libMolecuilderFragmentJobs.la \
[d0b3aca]171 $(BOOST_ASIO_LIBS) \
[72eaf7f]172 $(BOOST_SERIALIZATION_LIBS) \
173 $(BOOST_THREAD_LIBS) \
174 $(BOOST_SYSTEM_LIBS) \
175 ${CodePatterns_LIBS}
[d0b3aca]176
Note: See TracBrowser for help on using the repository browser.