Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
document last change (size_t fixes for 64bits)
[simgrid.git] / ChangeLog
index a991eb6..0c2ce27 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,96 @@
+Version 0.7 (protocol not changed; API changed)
+2004-09-16 Martin Quinson
+  - Fix some size_t madness on 64bit architectures.
+  
+2004-09-08 Martin Quinson
+  - Reduce the number of system headers loaded, overload some more system
+    calls (such as malloc to cast the result of the system one, and work
+    properly on AIX)
+  - Fix and reintroduce the config support
+
+2004-09-07 Martin Quinson
+  - Source code reorganization to allow Arnaud to surf all over there.
+  - Allow to document the logging categories
+  - Remove all uppercase from logging categories and useless cleanup in names.
+
+2004-08-18 Martin Quinson
+  Version 0.6.2 (protocol not changed; API changed)
+  - Interface cleanup: gras_msgtype_by_name returns the type (instead of a
+     gras_error_t), and NULL when not found. Functions expecting a msgtype
+     as argument (msg_wait; msg_send) deal with NULL argument by providing a
+     hopefully usefull message.
+  - Portability to prehistoric sparcs again
+
+2004-08-17 Martin Quinson
+  Version 0.6.1 (protocol not changed; ABI not changed)
+  - prealloc some buffers to speed things up
+
+2004-08-11 Martin Quinson
+  Version 0.6 (protocol not changed; ABI expended)
+  - The parsing macro can deal with the references, provided that you add
+    the relevant annotations (using GRAS_ANNOTE(size,field_name))
+
+2004-08-09 Martin Quinson
+  Version 0.5 (protocol not changed; ABI changed)
+  - Allow to off turn the cycle detection code in data exchange at
+    compilation time. It should be at run time, but I'm short of time (and
+    the config stuff is still broken). That way, we keep dict of of the
+    critical path, which is good because the performance is poor:
+     - search not dichotomial yet
+     - dynar give no way to access their content and memcpy everytime
+  - In composed data description (struct, ref and so on), stop foolness of
+    keeping the subtype's ID, but store the type itself. This keeps sets out
+    of the critical path, which is good since they rely on dynar and
+    dictionnaries. The only loose of that is that we cannot detect the
+    redeclaration of a structure/union with another content (but I'm not sure 
+    the code detected this error well before anyway). We still can detect
+    the redefinition discrepancy for the other types.
+  - Use a whole bunch of optimisation flags (plus -fno-strict-aliasing since
+    it breaks the code because of type-punning used all over the place).
+    This breaks on all non-gcc architectures (for now).
+    
+  All those changes (plus the buffer of last time) allow me to gain 2 order
+  of magnitude on cruel tests consisting of 800000 array of integers on two
+  level of a hierarchical structure (200 secondes -> 4 secondes)
+  
+  API change:
+    - the selector of reference must now return the type it points to, not
+      the ID of this type.
+
+2004-08-06 Martin Quinson
+  Version 0.4 (protocol changed; ABI not changed)
+  - Allow to pass --gras-log argument to processes in simulation mode. Really.
+  - New debugging level: trace (under debug) to see effect of GRAS_IN/OUT
+  - Implement a buffer transport, and use it by default (it relies on tcp in
+     real life and on sg in simulation).
+    That's a bit hackish since I had a new field to the structure to store
+     its data without interfering with the subtype ones. Inheritance
+     is tricky in C. And that's a kind of reverse inheritance with one class
+     derivating two classes. Or maybe a game with java interfaces. Anyway,
+     that's damn hard in C (at least).
+    Moreover, I got tired while trying to ensure plugin separation and
+     genericity in SG mode. MSG wants me to do weird things, so let's go for
+     cruel hacks (temporarily of course ;).
+     See comment in transport_private.h:71
+  - do not include all the _interface headers in private but in the files
+    which really need them (to cut the compilation time when they are
+    modified) 
+
+2004-07-26 Martin Quinson
+  Version 0.3 (protocol not changed; ABI changed)
+  - Major overhault of the datadesc interface to simplify it:
+    - shorted the function names:
+      s/gras_datadesc_declare_struct/gras_datadesc_struct/ and so on
+    - add a trivial way to push/pop integers into the cbps without malloc.
+      This allows to make really generic sub_type description, which simply
+        pop their size of the stack.
+    - add a function gras_datadesc_ref_pop_arr() which does what users want
+      most of the time: Declare a dynamic array (which pops its size of the
+      stack) and declare a reference to it. Poor name, but anyway.
+    - kill the post-send callback, add a post-receive one
+    
 2004-07-23 Martin Quinson
-  Version 0.2
+  Version 0.2 (protocol changed; ABI changed)
   - add some testing for cpbs in the test cases, and fix some more bugs.
     This invalidate again the little64 data file, since I cannot regenerate
     it myself.