unixforum.net - Der Treffpunkt für UNIX Fans Der Treffpunkt für UNIX Fans seit 2002
  Übersicht   Forum   Hilfe Suche Einloggen Registrieren   *
Suche
Google
Erweiterte Suche
Willkommen Gast. Bitte einloggen oder registrieren.
04. Februar 2012, 11:14:24

Einloggen mit Benutzername, Passwort und Sitzungslänge
Letzte 5 Shouts:
31. Dezember 2011, 22:28:22
Dann mal einen guten Rutsch!

Greez aus der Noris
25. September 2011, 08:05:05
Gute Besserung!
07. September 2011, 14:20:51
An diesem Tag hattest du also kein(en) Plan. Wink
04. September 2011, 19:04:39
ja, genau die. Bei mir war der Server wohl genau diesen Tag down. Alternative:
http://lsub.org/sys/src
01. September 2011, 20:10:10
Spenden
Berechtigungen

Anzeige
Anzeige
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: Quad Precision in Hardware?  (Gelesen 2275 mal)
rootnix
Unix Junior
**
Offline Offline

Beiträge: 56


Profil anzeigen
« am: 02. März 2010, 20:06:18 »

Hallo,
unterstützt außer Power6,7 eigentlich noch irgendein Prozessor 128bit Berechnungen oder wird das überall auf mehr oder weniger langsame Emulation geschoben? Die Anwendungsmöglichkeiten sind zwar eher selten aber interessant zu wissen wäre es.

Liste:
Power6,7
Parisc 2.0
« Letzte Änderung: 02. März 2010, 23:48:13 von rootnix » Gespeichert
unixforum.net - Der Treffpunkt für UNIX Fans
« am: 02. März 2010, 20:06:18 »

 Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #1 am: 02. März 2010, 23:39:23 »

PARISC 2.0 unterstützt das auch direkt in der FPU.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
rootnix
Unix Junior
**
Offline Offline

Beiträge: 56


Profil anzeigen
« Antworten #2 am: 02. März 2010, 23:47:51 »

Gibts dazu irgendwelche online verfügbare Dokumentation?
Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #3 am: 02. März 2010, 23:56:17 »

http://www.gidf.de/

oder auch

http://ftp://ftp.parisc-linux.org/docs/arch/
http://h21007.www2.hp.com/portal/site/dspp/menuitem.863c3e4cbcdc3f3515b49c108973a801?ciid=01086d6e1de021106d6e1de02110275d6e10RCRD

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
rootnix
Unix Junior
**
Offline Offline

Beiträge: 56


Profil anzeigen
« Antworten #4 am: 03. März 2010, 00:10:22 »

Off Topic:

Die Frage war speziell auf die Umsetzung der quad precision Fähigkeit in der parisc Hardware bezogen, war leider nicht klar genug formuliert. Nur eine Aufmunterung etwas beizutragen an jeden der meint etwas mehr darüber zu wissen (als in den ersten paar Google Resultaten steht).
« Letzte Änderung: 03. März 2010, 11:39:51 von rootnix » Gespeichert
unixforum.net - Der Treffpunkt für UNIX Fans
« Antworten #4 am: 03. März 2010, 00:10:22 »

 Gespeichert
madze
Global Moderator
Unix Guru
*****
Offline Offline

Beiträge: 1271


n00b!!!


Profil anzeigen
« Antworten #5 am: 03. März 2010, 09:16:09 »

Hat Fleedwood doch in seinem ersten Post getan. Also mal den Ball flach halten. Wink Ansonsten simmer halt ruhig und die meisten Fragen gehen ins Leere.

Gruß Matze
Gespeichert

Garm
Unix Junior
**
Offline Offline

Beiträge: 91


Profil anzeigen
« Antworten #6 am: 03. März 2010, 17:06:03 »

Im nekochan-Forum haben sie sich auch schon zu dem Thema unterhalten: http://forums.nekochan.net/viewtopic.php?f=8&t=16722564


Vielleicht hilft dir das ja irgendwie weiter
Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #7 am: 03. März 2010, 23:42:30 »

Die Frage war speziell auf die Umsetzung der quad precision Fähigkeit in der parisc Hardware bezogen, war leider nicht klar genug formuliert.

ähh was passt jetzt nicht ? In der PARISC 2.0 CPU Doku wird beschrieben wie u.a. die FPU Register bei 128 Bit Floats aufgeteilt und benutzt
werden. Was ist jetzt da unklar ? Soll ichs vorlesen ?

Zitat
Nur eine Aufmunterung etwas beizutragen an jeden der meint etwas mehr darüber zu wissen (als in den ersten paar Google Resultaten steht).

wenn man sich für CPUs interessiert braucht man Datenblätter. Im Fall von PARISC hab ich die auf meinem Rechner (und irgendwo liegts auch
noch als Paperback rum) und wer das nicht hat sollte google benutzen. Was ich dann auch noch für Dich getan hab. Seh schon das nächste Mal
laß ich die beiden direkten URLs wirklich weg.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
Ten Little Indyans
Unix Bachelor
***
Offline Offline

Beiträge: 160


Profil anzeigen
« Antworten #8 am: 04. März 2010, 09:29:54 »

In der PARISC 2.0 CPU Doku wird beschrieben wie u.a. die FPU Register bei 128 Bit Floats aufgeteilt und benutzt werden.

Ich habe gestern Abend in meiner offline (Papier) Version geschmökert. Das mit den Registern ist ja schön und gut, auch die entsprechenden Instruction Completer werden beschrieben. Was mich daran aber verwirrt sind die Load- und Store-Befehle: Es gibt nur FLDW (Floating-Point Load Word) und FLDD (Floating-Point Load Doubleword).

Wie bekomme ich also meine Quad-Words aus dem Speicher in die Register  Huh

(Vermutlich muss man zwei Double-Words in benachbarte 64-Bit Register laden. Entsprechende Hinweise sehe ich nicht, stattdessen wird lang und breit erklärt wie man mit FLDD auch zwei Single-Words in die linke und rechte Hälfte eines Registers laden kann...)

P.S. Mein Alpha AXP Reference Manual ist so alt dass für 128-Bit FP in Hardware auf die Zukunft verwiesen wird. "Aktuell" (1995) seien die Befehle rein in Software implementiert, aber man behalte sich vor sie bei zukünftigen Generationen in Hardware umzusetzen.
Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #9 am: 04. März 2010, 09:44:18 »

Wie bekomme ich also meine Quad-Words aus dem Speicher in die Register  Huh

(Vermutlich muss man zwei Double-Words in benachbarte 64-Bit Register laden. Entsprechende Hinweise sehe ich nicht, stattdessen wird lang und breit erklärt wie man mit FLDD auch zwei Single-Words in die linke und rechte Hälfte eines Registers laden kann...)

vermutlich kann die load/store Engine eh nur mit 64Bit Daten umgeben, also hat man sich den 128bit load/store Befehl gespart und wird das wohl per 64bit load/stores
abfrühstücken. Ein objdump auf einem HPUX PARISC Binary, das 128bit Floats benutzt müßte darüber ganz gut Auskunft geben.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
rootnix
Unix Junior
**
Offline Offline

Beiträge: 56


Profil anzeigen
« Antworten #10 am: 04. März 2010, 13:25:20 »

Bei nekochan sind sie auch nicht wirklich weiter gekommen bei dem Thema. Immerhin ist jetzt klar dass MIPS 128bit nicht direkt unterstützt.
Itanium unterstützt quad precision nicht. Gilt für Itanium2, ob sich das für Itanium 9000 aufwärts geändert hat steht nicht im Architekturbuch.
« Letzte Änderung: 04. März 2010, 14:34:33 von rootnix » Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #11 am: 04. März 2010, 22:18:58 »

Bei nekochan sind sie auch nicht wirklich weiter gekommen bei dem Thema. Immerhin ist jetzt klar dass MIPS 128bit nicht direkt unterstützt.

das MIPS keine 128bit floats unterstützt, hat mich keine 5 Minuten nachgucken im R4k Usermanual gekostet... und bei Ultrasparcs siehts so
wie bei Alphas aus, ist in der Architektur definiert, aber zumindest nicht in Hardware implementiert. Das wiederum hat google recht zügig gefunden.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
Ten Little Indyans
Unix Bachelor
***
Offline Offline

Beiträge: 160


Profil anzeigen
« Antworten #12 am: 07. März 2010, 16:09:08 »

Zumindest auf meiner C3700 mit HP-UX 11.11 zeigt ein kleiner C/C++-Praxistest mit HP und GNU Compiler keinerlei Anzeichen von Quad in Hardware.

Zitat
HP-UX B.11.11 9000/785

cpp.ansi: HP92453-01 B.11.11.16 HP C Preprocessor (ANSI)
ccom: HP92453-01 B.11.X.36086-36089-36092.GP HP C Compiler
/usr/ccs/bin/ld: 92453-07 linker linker ld B.11.68 090514

GNU C version 4.2.2 (hppa2.0w-hp-hpux11.11)

Addition mit Datentyp double (64 Bit), wie erwartet:
Zitat
        FLDD    -72(%r30),%fr5  ;offset 0x6c
        LDIL    LR'S$12$main,%r20       ;offset 0x70
        FLDD    RR'S$12$main+24(%r20),%fr6      ;offset 0x74
        FADD,DBL        %fr5,%fr6,%fr7  ;offset 0x78
        FSTD    %fr7,-72(%r30)  ;offset 0x7c

Addition mit Datentyp long double (128 Bit):
Zitat
        LDO     -64(%r30),%r26  ;offset 0xa8
        LDO     -88(%r30),%r25  ;offset 0xac
        LDO     -104(%r30),%r28 ;offset 0xb0
        LDIL    L'_U_Qfadd,%r31 ;offset 0xb4
        .CALL   ARGW0=GR,ARGW1=GR,RTNVAL=GR     ;in=25,26,28;
        BE,L    R'_U_Qfadd(%sr4,%r31),%r31      ;offset 0xb8

Es wird also auf eine Bibliotheksroutine Qfadd (in libc) ausgewichen. Dort finden sich auch Qfsub, Qfmul, Qfsqrt usw.

Um mit handgestricktem Assembler eine Quad-Operation zu versuchen fehlt mir im Moment leider die Zeit.
Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #13 am: 08. März 2010, 00:33:36 »

Zumindest auf meiner C3700 mit HP-UX 11.11 zeigt ein kleiner C/C++-Praxistest mit HP und GNU Compiler keinerlei Anzeichen von Quad in Hardware.

weil dann doch keine Hardware dafür da ist, da hab ich mich dann doch in die Irre leiten lassen:

http://lists.parisc-linux.org/pipermail/parisc-linux/2006-November/055055.html

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC
TinyPortal v0.9.8 © Bloc
Prüfe XHTML 1.0 Prüfe CSS
sonnenblen.de, mood-indigo.org, unixforum.net und realcomputers.org sind Projekte der steinbruch.info GbR

Google war zuletzt hier 17. Januar 2012, 21:21:40