IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Ordonnancement de tas de données, architecture évolutive, choix C/C++


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 27
    Par défaut Ordonnancement de tas de données, architecture évolutive, choix C/C++
    Bjr à tous.

    Je cherche à résoudre correctement les 3 problèmes suivants :

    I) Multi-ordonnancement de plusieurs tas de données, ce qui implique une gestion des données généralement basées sur des clés composées.

    Réduction des temps d'accès aux données les plus souvent mises à jour.

    Après une bonne dose de recherche, et de réflexion, j'envisage une solution combinant les treaps et des arbres. (binaires ou n-aires, j'hésite encore).
    Quelqu'un a-t'il des recommandations à ce sujet ?

    II) Modélisation technique/contexte fonctionnel :
    Il s'agit d'une application passerelle gérant des entrées/sorties entre une application maitre et des grappes de périphériques. C'est à dire un super driver bi-directionel.

    Aujourd'hui l'interface entre l'application et les grappes de périphériques est en USB-I2C. Le driver (dll) associé n'est pas réentrant, le protocole est unidirectionel. on peut donc envisagé une state machine.

    Le hot-plug d'une racine de grappe, ou d'un périphérique à une grappe déjà existante est un objectif pertinent.

    D'autres technologies comme USB-SPI, USB-CAN, TCP-IP-CAN, sont envisageables ultérieurement. Il parait probable qu'il faudra alors :
    1) implémenter des state machine pour chacune des nouvelles technologies.
    2) threader chacune de ces state machines.
    Il y a t-il des critiques pertinentes à cette approche ?

    III) L'application maître est excessivement gourmande en ressource. Pour cette raison (et par habitude de programmation), j'écarte (possiblement à tort) le C++ et je retiens le C. L'approche objet faciliterait peut-être l'intégration, la co-existence et la coopération des technologies envisagées, sans oublier la vitesse de développement. Je crains cependant un surcoût temps d'exécution/occupation mémoire. Vous connaissez le périmètre fonctionnel.
    S'il y a delta de performance entre C/C++, de quel ordre pourrait t-il être 10% ? 20% ? Question idiote ? (dans ce cas, désolé; mon intention n'est pas de troller, j'ai d'autre chose à faire ).

    Merci de leur attention à tous ceux qui ont lu ce message jusqu'au bout.
    Amicalement

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    • Primo, avoir un langage plus généraliste faciliterais la compréension et donc l'aide
    • Secondo, moi, pour une architecture maître->grappe, je favoriserais des serveurs..., chaque serveur pouvant être maître...

Discussions similaires

  1. Architecture pour choix de strategie
    Par Aladore dans le forum C++
    Réponses: 5
    Dernier message: 15/08/2010, 11h33
  2. [table] type de données: liste de choix
    Par aba_tarn dans le forum Modélisation
    Réponses: 2
    Dernier message: 26/07/2007, 12h39
  3. Stocké ses données - le bon choix ?
    Par matt8-5 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 19/02/2007, 15h57
  4. Base de donnée le meilleur choix
    Par aityahia dans le forum Bases de données
    Réponses: 5
    Dernier message: 06/04/2006, 08h46
  5. Réponses: 3
    Dernier message: 15/03/2006, 12h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo