Parent Directory
|
Revision Log
Sticky Revision: |
New config option build_shared (which replaces share_paso & share_esysUtils). Also enabled building escriptreader library on Windows which should now work in both shared and static mode.
Switching to external cppunit: -removed tools/CppUnitTest -updated scons script and files -updated tests to changed API -updated readme Bumped scons options file version to 201. Additions: -cppunit* -boomeramg* -vsl_random
escript now supports out-of-tree builds. All build and test files are now created under a user-definable build_dir directory. This also fixes issue 291. Removed most svn:ignore props since they are no longer required.
Merging dudley and scons updates from branches
Don't panic. Updating copyright stamps
Updating copyright notices
Two changes. 1. Move blocktimer from escript to esysUtils. 2. Make it possible to link to paso as a DLL or .so. Should have no effect on 'nix's In respect of 1., blocktimer had begun to spring up everywhere, so for the moment I thought it best to move it to the only other library that pops up all over the place. In respect of 2., paso needed to be a DLL in order to use the windows intelc /fast option, which does aggressive multi-file optimisations. Even in its current form, it either vectorises or parallelises hundreds more loops in the esys system than appear in the pragmas. In achieving 2. I have not been too delicate in adding PASO_DLL_API declarations to the .h files in paso/src. Only toward the end of the process of the conversion, when the number of linker errors dropped below 20, say, did I choosy about what functions in a header I declared PASO_DLL_API. As a result, there are likely to be many routines declared as external functions symbols that are in fact internal to the paso DLL. Why is this an issue? It prevents the intelc compiler from getting aggressive on the paso module. With pain there is sometimes gain. At least all the DLL rules in windows give good (non-microsoft) compiler writers a chance to really shine. So, if you should see a PASO_DLL_API on a function in a paso header file, and think to yourself, "that function is only called in paso, why export it?", then feel free to delete the PASO_DLL_API export declaration. Here's hoping for no breakage.....
Added (as comment for the moment) very aggressive intelc optimisation. Also add options (as comments) to compile esysUtis and paso as DLL's so I can eventually use the /fast option on the intelc compiler.
Make the windows intel compiler work harder at un-rolling loops and inlining absolutely everything it can.
Consolidate many of the icl speed options into the /Ox option.
Make the intel compiler work for its money.
Refine the intelc compiler options, and link to the dll version of libguide.
Add the tools_names vars to control the compiler toolset scons uses on windows platforms. (See cgisrv3_options.py for example of use).
Bringing all changes across from schroedinger. (Note this does not mean development is done, just that it will happen on the trunk for now). If anyone notices any problems please contact me.
abortive attempt to automate the choice of windows compiler based uponj the options file.
Pass 2 at getting openMP going on windows. Problem is incompatible mathinf.h and system math.h at this point.
First cut at omp options for windows.
do some code reuse to ease upkeep.
Updated copyright for a few remaining python files
Turn on netcdf in windows build. No new errors generated.... remarkable. The correctly configured netCDF source and windows build config. that matches enthought python25/vtk/PmdPyRT for windows, can be obtained from https://cgsrv1.arrc.csiro.au/subversion/swframeutils/thirdParty/netcdf/trunk username & password needed. If you have access to our twiki, no new username is required, but authorisation to read the repository will be required.
Merge in /branches/windows_from_1456_trunk_1620_merged_in branch. You will find a preserved pre-merge trunk in tags under tags/trunk_at_1625. That will be useful for diffing & checking on my stupidity. Here is a list of the conflicts and their resolution at this point in time. ================================================================================= (LLWS == looks like white space). finley/src/Assemble_addToSystemMatrix.c - resolve to branch - unused var. may be wrong..... finley/src/CPPAdapter/SystemMatrixAdapter.cpp - resolve to branch - LLWS finley/src/CPPAdapter/MeshAdapter.cpp - resolve to branch - LLWS paso/src/PCG.c - resolve to branch - unused var fixes. paso/src/SolverFCT.c - resolve to branch - LLWS paso/src/FGMRES.c - resolve to branch - LLWS paso/src/Common.h - resolve to trunk version. It's omp.h's include... not sure it's needed, but for the sake of saftey..... paso/src/Functions.c - resolve to branch version, indentation/tab removal and return error on bad unimplemented Paso_FunctionCall. paso/src/SolverFCT_solve.c - resolve to branch version, unused vars paso/src/SparseMatrix_MatrixVector.c - resolve to branch version, unused vars. escript/src/Utils.cpp - resloved to branch, needs WinSock2.h escript/src/DataExpanded.cpp - resolved to branch version - LLWS escript/src/DataFactory.cpp - resolve to branch version ================================================================================= This currently passes tests on linux (debian), but is not checked on windows or Altix yet. This checkin is to make a trunk I can check out for windows to do tests on it. Known outstanding problem is in the operator=() method of exceptions causing warning messages on the intel compilers. May the God of doughnuts have mercy on my soul.
brought from the windows port branch. Should make no difference to *nix's
And get the *(&(*&(* name right
Restore the trunk that existed before the windows changes were committed to the (now moved to branches) old trunk.
Make a temp copy of the trunk before checking in the windows changes
The MPI branch is hereby closed. All future work should be in trunk. Previously in revision 1295 I merged the latest changes to trunk into trunk-mpi-branch. In this revision I copied all files from trunk-mpi-branch over the corresponding trunk files. I did not use 'svn merge', it was a copy.
Add in the netcdf libraries.
Update for the new SConstruct
Reduce the number of IS_WINDOWS_PLATFORM references in SConstruct. Change path to boost etc in windows_mscv71_options.py Some of these changes are present in windows_mscv71_options.py, more changes needed once I get the mscv71 build going properly.
The OMP_NUM_THREADS environment variable is now imported into the scons evironment.
Finished renaming of boost_lib to boost_libs and boost_lib_path to boost_libs_path.
Change the netcdf path options to reflect the svn controlled netcdf path.
More windows options.
More windows options changes.
Windows options files.
Add some example options files people can copy and modify for their node.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.26 |