+- a way to get the network proximity (needed by Pastry, at least)
+
+- pull method of source diffusion in graspe-slave
+
+- Use a xbt_set for gras_procdata_t->libdata instead of a dict
+ so that the search can be linear.
+
[sorry for the parts in french :]
###
-### Avant 0.5
+### Very soon
###
- tcp->incoming_socks
- sock specific tcp (buffsize) inutile
+ sock specific tcp (buffsize) useless
###
-### Avant 1.0
+### Soon
###
- gras_os_getload
-- gras_datadesc_import_nws
+- gras_datadesc_import_nws?
-- rawsock
- Verifier que les messages vont pas sur des sock raw
+- meassock
+ Check that messages don't go on meas socks
+ Implement it
-- Documentation (en particulier DD et Msg)
+- Implement gras_datadesc_cpy to speedup things in the simulator
+ For now, we mimick closely the RL when on simulator, which is not needed.
+ (this was easier to do).
+ gras_datadesc_cpy needs to provide the size of the corresponding messages, so
+ that we can report it into the simulator.
-- gras_datadesc_cpy -> donne la taille prise pour donner un poids aux messages
+- a init/exit mecanism for logging appender
+- more logging appenders
-- callback en reception ?? (remettre les pointeurs sur fonction etc)
+- when a send failed because the socket was closed on the other side,
+ try to reopen it seamlessly. Needs exceptions or another way to
+ differentiate between the several system_error.
+- cache accepted sockets and close the old ones after a while.
+ Depends on the previous item.
-- Virer cat ignored
- gras_ddt_new_ignored : Pas portable (taille) => virer cat?
- Necessaire aux pointeurs sur fonction? Renomer 'void'
###
-### Apres
+### A bit later
###
- Adaptative timeout
-- datadesc_set_cste: Donne la valeur par defaut en reception
- plus de transfert, ce qui est utile pour les pointeurs sur fct
+- datadesc_set_cste: give the value by default when receiving.
+ It's not transfered anymore, which is good for functions pointer.
============================================================================
- core ok (errors, logs ; dynars, dicts, hooks, pools; config, rrdb)
- virtualize (linux, solaris, SG) & conditions
- binary representation: any type, SNWF (Sender Native Wire Format)
- - modules (logs, manage, token ring, bw)
+ - modules (log control, manage, token ring, bw)
- cleanups, documentation
[autoconf]
- Check in autoconf that no datatype is bigger than 64, or dynar_map will
- get into trouble...
+ Check the gcc version on powerpc. We disabled -floop-optimize on powerpc,
+ but versions above 3.4.0 should be ok.
+ The ucontext usability test is too light. It returns success on IRIX, but
+ shouldn't since ucontext are broken for us there.
[portability layer]
- Dynar of type, such as ref of type
- Generate convertors in assembler ?
Mallocators
[Messaging]
Message forwarding
Message priority
- Message declarations in a tree manner
+ Message declarations in a tree manner (such as log channels)
[errors]
Better split casual errors from programing errors.
Allow each process in simulation to have its own setting
[dict]
- dichotomie in search
speed up the cursors, for example using the contexts when available
fix multi levels dicts
selects sur un pool {leur socket x un pipe fait pour}
Quand qqch arrive sur le pipe, c'est le signal du suicide.
-[Conversions inter-architectures]
+[Inter-arch conversions]
Convert in the same buffer when size increase
- Exchange structures in one shoot.
+ Exchange (on net) structures in one shoot when possible.
Port to really exotic platforms (Cray is not IEEE ;)
- Generate the convertion functions in assembly, since we have a plenty of
- time to waste.
[XML]
- Do what is written in the paper
-
-[Macro parseuse]
- Gerer les typedefs (necessite de l'aide de grassouillet)
- Gerer les unions => specifier des annotations, mais j'y crois pas
- Gerer les enum
- Gerer les long long
- Gerer les types struct, union et enum anonymes au milieu d'un autre bloc de
- donnees.
- Verifier que "char"="signed char" sur toutes les archis
+ Do what is written in the paper (multiplex on incoming HTTP)
+
+[DataDesc and Parsing macro]
+ Handle typedefs (needs love from DataDesc/)
+ Handle unions with annotate
+ Handle enum
+ Handle long long and long double
+ Forbid "char", allow "signed char" and "unsigned char", or user code won't be
+ portable to ARM, at least.
+ Handle struct/union/enum embeeded within another container
+ (needs modifications in DataDesc, too)
- Renomer gs_parse_tok_num en gs_parse_token
Check short a, b;
Check short ***
Check struct { struct { int a } b; }
-[Grassouillet]
- Gerer les typedefs pour aliaser un type sur un autre
- Merger gs_type_union_append_field et gs_type_struc_append_field si possible.
+ Factorize code in union/struct field adding
-[Autres]
- Faire toutes les modifs aux Utils listees plus haut
- Simplifier l'envoi de dynar et dico
- Mettre les mutex et semaphores dans les dynar directement
- Tenter (politiquement) le passage a GPL, pour voler du code.
+[Other]
+ Allow [homogeneous] dico to be sent
+ Make GRAS thread safe by mutexing what needs to be
************
* La suite *
************
GRAS double (ou encore "GRAS too" ou "too GRAS"):
- - Priorite des messages
- - Outils de visu pour ce qui se passe dans le simulo
- - Outils de visu/deployement/management pour RL
+ - Message prioritization
+ - Visualisation tool to see what happens in the simulator (Paje ?)
+ - Tool to visualize/deploy and manage in RL
GRAS (très):
- outils mathematiques pour dire des choses sur la validite du protocole