Commit Graph

23 Commits (20edb20efebce5d887021cbdbabe40ce099e4bbe)

Author SHA1 Message Date
Thorsten Liebig 20d6547235 MPI: added cylindrical multigrid support
The cylindrical multigrid scheme needed a workaround:
An additional barrier is necessary to prevent a simultaneous MPI comm access.

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-10 10:39:08 +01:00
Thorsten Liebig 8d2d645a26 MPI: insert MPI engine into main engines inheritance scheme
new inheritance scheme:
[..] -> SSE_Compressed -> MPI -> Multithreading -> [..]
2011-03-10 10:39:07 +01:00
Thorsten Liebig 9d3761b1d0 Init style: applied astyle.sh
astyle --style=allman --indent=tab --indent-cases {} \;

please apply this style prior to any future commit

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 15:31:11 +01:00
Thorsten Liebig 043ef6ec4c extensions: multithreading support added
every extension can either implement the single threaded methods e.g. DoPreVoltageUpdates()
or the multithreading aquivalent method e.g. DoPreVoltageUpdates(int threadID)

Engine_Ext_UPML class is an example for a multithreading extensions
2010-10-06 10:30:55 +02:00
Thorsten Liebig f6663eeccb multithreading engine: removed separate excitation thread
the excitation is now handled by the first (ID=0) "conventional" thread
2010-10-02 18:06:38 +02:00
Thorsten Liebig bd4794ecc4 NEW: cylindrical multigrid FDTD
this is a new multi grid approach for the cylindrical FDTD.
The FDTD domain will be split in two regions in radial direction.
The "inner" region will have half as many disc-lines in alpha direction and therefore allow for a much larger timestep which increases the simulation speed.

Todo:
- currently only a homogeneous disc is allowed in alpha direction
- some extensions have to be tested and prepared for this approach (e.g. pml)
- speed enhancement and more efficient memory usage
- lots and lots of testing...
2010-09-08 07:36:32 +02:00
Thorsten Liebig db0f4ab3e0 MT-engine has access to MT-operator 2010-09-02 22:16:37 +02:00
Sebastian Held 55ac7137a3 minor documentation updates 2010-07-16 10:41:12 +02:00
Thorsten Liebig dab5be229b multithreaded engine now a derived class of compressed sse engine, created by new operator_multithread class
- also fixed double init() call of engines
- operator_multithread open for future multithreaded operator creation
2010-05-20 22:02:06 +02:00
Sebastian Held df17dc23c6 evil hack to get multithreading working again
future: restructure the multithreading engine to only work on top the sse_compressed engine
2010-05-20 17:39:39 +02:00
Thorsten Liebig 72330844cc critical fix in engine field access methods 2010-05-18 14:10:11 +02:00
Thorsten Liebig 98c10c7628 define engine type and overload all GetVolt/GetCurr 2010-05-17 13:08:27 +02:00
Thorsten Liebig 7f70f0fb4d engine independent multi-threading 2010-05-11 19:11:38 +02:00
Sebastian Held 4fcee4588f win32 compile fixes 2010-04-28 11:15:59 +02:00
Thorsten Liebig 2c21303833 NEW: first implementation of Cylindrical Coord FDTD
todo:
  - allow closed alpha mesh
  - allow r=0 case
  - adept field processing
  - ...
2010-04-09 15:51:37 +02:00
Sebastian Held 37ff221c18 multithreaded engine works
but it's slow...
2010-04-01 16:11:55 +02:00
Sebastian Held 813683304b new commandline switch: --numThreads= 2010-03-30 13:13:00 +02:00
Sebastian Held b8180287e9 time debug code can now be disabled 2010-03-28 13:10:16 +02:00
Sebastian Held fb193ac25b debugging 2010-03-27 22:57:25 +01:00
Sebastian Held e108e17cec bugfix: calculate correct number of timesteps 2010-03-27 11:32:06 +01:00
Sebastian Held 79b0e6a2e0 first implementation of a multithreaded engine (bugs and mem leaks present!) 2010-03-26 23:53:05 +01:00
Sebastian Held a7ccec254d static createEngine() added to work around virtual constructor problems 2010-03-26 17:24:43 +01:00
Sebastian Held c916059a30 new engine: multithreaded 2010-03-26 12:57:52 +01:00