Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
884 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C] produit matrice vecteur vectoriel (Altivec inside)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C] produit matrice vecteur vectoriel (Altivec inside)

n°1514641
nodus
Posté le 14-02-2007 à 16:29:24  profilanswer
 

Je suis en train de travailler sur la multiplication matrice-vecteur en vectoriel (grâce à Altivec, VMX pour les intimes). Je rencontre actuellement un problème lors de la vectorisation des opérations arithmétiques, plus particulièrement pour la multiplication.
 
En effet la matrice et le vecteur sont tous deux codés en integer (soit 32 bits), le souci est qu'il ne m'est possible d'effectuer un produit soit avec des short (16) ou des char (8) ce qui ne convient pas. La solution  serait de transtyper mes integer en float et d'utiliser l'opération vec_madd (qui est aussi intéressante pour d'autre raisons) mais cela peut poser des soucis quant à la précision du résultat.
 
J'aurais voulu savoir s'il existait des solutions possibles pour faire le produit matrice-vecteur en 32 bits avec Altivec sans forcément perdre en précision.
Merci de votre aide :)  
 

mood
Publicité
Posté le 14-02-2007 à 16:29:24  profilanswer
 

n°1514767
Joel F
Real men use unique_ptr
Posté le 14-02-2007 à 21:48:38  profilanswer
 

me semble t il qu'il ya une fonction a*b+c en 32 bits , vec_msum
http://developer.apple.com/hardwar [...] _msum.html
 
En gros le aik*bkj devrait pouvoir se faire avec ça.tu ecris ta multiplication en base 256  
à grand coup de vec_pack/vec_merge, transtypage silencieux ... long mais efficace.
Je vais regarder dans les sources de ma bibliothèques de calcul vectorielle Altivec si j'ai pas ca qui traine.
 
sinon la veclib contient une version optimisé de ce genre de truc (LAPACK aussi je pense).


Message édité par Joel F le 14-02-2007 à 21:50:01
n°1514779
nodus
Posté le 14-02-2007 à 22:05:22  profilanswer
 

Merci de ton aide, je met ça en place dès demain :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C] produit matrice vecteur vectoriel (Altivec inside)

 

Sujets relatifs
[C#] [Résolu] Comment communiquer avec une dll c++[Code inside] Conversion entre UTF-8 et ANSI (utf8 ansi transact sql)
Initialisation à zéro d'une grosse matrice en Cmatrice statique et dynamique
passage de matrice en parametreQuelle technique pour faire cette bdd ? (Newbie inside...)
Fusion de deux tableaux(Noob Inside)[Résolu] Matrice et fonctions
[C] Des accolades "just pour le fun" ?inverse matrice en c
Plus de sujets relatifs à : [C] produit matrice vecteur vectoriel (Altivec inside)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR