Athlon64 - 32 oder 64bit Linux?

  • Hallo!


    Mein neues VDR-Serverboard und Athlon64 Prozessor sind unterwegs. Jetzt stelle ich mir grad die Frage was besser funktionieren wird - 32 oder 64bit linux!? Die Suche liefert zwar ein paar Ergebnisse, aber diese scheinen mir nicht mehr ganz up2date zu sein. Vielleicht kann ja jemand seine Erfahrungen schildern...


    Gruss, Michael

  • Wenn du eine 64bit Hardware hast, solltest du auch einen 64bit Kernel verwenden (+libs, pkgs, usw. ). Falls deine lieblings Dist. aber nur mit 32bit Kernel ausgeliefert wird, kannst du auch diesen installieren.


    Wie gesagt wenn du dir den Kernel aussuchen kannst, waehre es eine Verschwendung NUR im 32bit modus zu fahren.


    Wir haben einige Server in der Firma. Da gibt es keine Probleme damit. Z.B. kannst du den 64bit Kernel und 32bit Bins gemeinsam verwenden und installieren. Das geht OK. Beim Itanium(2) geht das leider nicht :( . Aber den hat/kauft sowieso keiner :)

    Die Cylonen wurden vom Menschen erschaffen
    Sie rebellierten
    Sie entwickelten sich
    Sie sehen aus und fühlen wie Menschen
    Einige sind programmiert zu denken, sie seien Menschen
    Es gibt viele Kopien


    Und sie haben einen Plan

  • Hi,


    das würde ich mir nicht "antun". Du wirst merken, daß das noch ein steiniger Weg ist, weil Du nicht alle Binaries bekommst, d.h. du mußt sehr sehr viel selbst compilieren .... um den 64 bit "Vorteil" zu haben. Du mußt zumindest auch die 32 Bit Libraries dazuinstallieren (also doppelt) und da ist die Change sehr groß, daß etwas nicht ganz so läuft, wie Du möchtest.


    Bzgl. Geschwindikeit solltest Du Dir absolut keinen bemerkbaren Vorteil erwarten, das wäre ein falsche Schluß.


    Übrigens, das Thema wurde schon unter : http://www.vdrportal.de/board/thread.php?threadid=31370&sid=&hilight=athlon+and+64+and+bit diskutiert.

    Pentium Quad 8400s, 4 GB RAM, ASUS P5Q-E, 2x Mystique Dual (V2 und V3), 15 TB RAID, yaVDR 0.5a (VDR 2.x)

  • Zitat

    Original von tortelini
    Wir haben einige Server in der Firma. Da gibt es keine Probleme damit. Z.B. kannst du den 64bit Kernel und 32bit Bins gemeinsam verwenden und installieren. Das geht OK. Beim Itanium(2) geht das leider nicht


    Du bist Dir sicher, daß das geht? 32bit-Applikationen unter einem 64bit Linux laufen zu lassen? Meine, das ging nicht- oder was muß man dafür machen, damit es geht? Oder liegt's an der CPU?

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

  • Moin moin.
    Gerade beim VDR wuerde ich mir das mit 64bit ueberlegen, weil solche Sachen wie die win32-codecs, wie der Name schon andeutet, nur unter 32bit laufen. Es soll da zwar Mittel und Wege bzw. xvid-codecs geben, aber trivial ist das nicht und alles koennen die glaub ich auch nicht.
    Bei meiner "VDRsyncGUI/DVD-Erstell-Maschine" (Athlon64, ist nicht mein VDR) musste ich bei meinem Gentoo Linux ein bisschen fummeln, um die noetigen Programme kompiliert zu bekommen.
    Letztendlich ist es wohl von Deiner Distribution abhaengig, ob diese 64bit-Versionen der binaries bietet.


    Versuch macht kluch !
    Michael

  • Zitat

    Original von knebb
    Du bist Dir sicher, daß das geht? 32bit-Applikationen unter einem 64bit Linux laufen zu lassen? Meine, das ging nicht- oder was muß man dafür machen, damit es geht? Oder liegt's an der CPU?


    Ja, sicher. Bei Solaris geht das ja auch.
    Bei Linux muss man(n) etwas dafuer tun. Das Problem ist nicht die CPU sondern die lib-Organisation bei Linux. Keiner hat damit gerechnet, dass ein iaXX-CPU sowohl 32 als auch 64bit fahren kann.


    TIPP: Alles lesen!
    HIER DER AUSZUG AUS DEM debian-amd64-howto.html:


    Using an IA32 chroot to run 32bit applications



    Introduction


    The current amd64 port of debian is a pure 64bit port. This means you can't run binary only programs which are compiled for IA32 or applications which haven't been ported to AMD64 yet (e.g. OpenOffice.org). This is because you can't mix 32bit applications and 64bit libraries. You would also need the 32bit versions of the libraries to run a 32bit application.


    This chapter explains how you can run 32bit applications in your 64bit system using the IA32 libs from a IA32 chroot and running IA32 applications inside this chroot, in a way which is mostly transparent to the user.



    The quick way


    There is already a minimal set of IA32 libraries packaged for use in a 64bit Debian system. Simply do an 'apt-get install ia32-libs' and you will be able to run most 32bit binaries within your system.



    Installing a Debian IA32 chroot system


    First you need to install a IA32 base system into a chroot. You can do this with the debootstrap command:


    debootstrap --arch i386 sid /var/chroot/sid-ia32 ftp://ftp.debian.org/debian


    To install a few more libraries you can change into this chroot and install/update packages with apt-get:


    chroot /var/chroot/sid-ia32
    apt-get install libx11-6


    To use the 32bit libraries in your 64bit system you have to add the library path of your chroot into your /etc/ld.so.conf:


    /usr/X11R6/lib
    # chroot i386 system libs
    /var/chroot/sid-ia32/lib
    /var/chroot/sid-ia32/usr/lib
    /var/chroot/sid-ia32/usr/X11R6/lib
    /var/chroot/sid-ia32/usr/local/lib


    You also need a link to your 32bit linker in the /lib path. Change in to directory /lib and create a link to the 32bit linker library of your chroot: (The name of the 64bit linker is ld-linux-x86-64.so.2)


    Now run ldconfig to update your linker's cache.


    Now you should be able to run ia32 binaries with the libs from your chroot within your 64bit system. Having the libs in a separate chroot makes it easy for you to update or install the 32bit libraries with apt-get.



    Running applications inside the chroot (e.g. OpenOffice.org)


    To run an application inside the chroot you will need some parts of your 64bit system tree inside the chroot. This can be achieved with a bind mount. In this example we will bind /tmp to the chroot for the X11 sockets which are in /tmp, and bind /home to access the home directories from within the chroot. You may also want to mount the /proc and /sys filesystems within the chroot. Edit your fstab and add the required paths:


    # ia32 chroot
    /home /var/chroot/sid-ia32/home none bind 0 0
    /tmp /var/chroot/sid-ia32/tmp none bind 0 0
    proc /var/chroot/sid-ia32/proc proc defaults 0 0


    Then mount them:


    mount /var/chroot/sid-ia32/home
    mount /var/chroot/sid-ia32/tmp
    mount /var/chroot/sid-ia32/proc


    You will also need to set up the relevant users in the chroot. Copy your /etc/passwd, /etc/shadow and /etc/group files to the chroot, or add the users manually to the passwd/shadow of your chroot. It is also possible to hard link the files when they are on the same partition. Just make sure the user exists also in the chroot.


    At this point you should be able to run applications within the chroot. Change to your chroot (you must be root to do this):


    chroot /var/chroot/sid-ia32


    Change to the user under which you want to run the program:


    su - zumsel


    Set your $DISPLAY:


    export DISPLAY=:0


    And run something:


    openoffice


    Of course you must have installed the package inside the chroot for this to work.


    There is also an easier way to run applications inside the chroot with the dchroot. Leave the chroot and install the dchroot package. dchroot allows users to change into chroots and run commands inside them. You must add your chroot to /etc/dchroot.conf to allow users to change into it:


    # ia32 chroot
    ia32 /var/chroot/sid-ia32


    Now you should be able to run commands inside the chroot as normal user:


    dchroot -c ia32 -d openoffice


    This will run openoffice in the ia32 chroot you specified in /etc/dchroot.conf. The option -d preserves the user's environment so you don't have to set DISPLAY or such things manually.


    You can make things slightly simpler even than this. Write a small shell script like the following, and place it in your PATH: eg. /usr/local/bin/do_dchroot


    #!/bin/sh
    ARGS=""
    for i in "$@" ; do
    ARGS="$ARGS '$i'"
    done


    exec dchroot -c ia32 -d -q "`basename $0`" "$ARGS"


    Make it executable:


    chmod 755 /usr/local/bin/do_dchroot


    Now create a symlink to this script from each command you want to run inside the chroot to this shell script:


    cd /usr/local/bin
    ln -s do_dchroot openoffice
    ln -s do_dchroot oowriter
    ln -s do_dchroot oocalc


    Now you can execute openoffice by simply typing openoffice or oowriter.


    You can also pass filenames on the command line to openoffice since the paths are the same inside the chroot.



    The future: Multiarch


    While architectures like sparc64 or powerpc64, which provide lib for default 32bit libraries and lib64 for extra 64bit libraries, default to executing 32bit applications, amd64 defaults to 64bit binaries because of the performance benefits it offers in 64bit mode. Thus, not wanting to rewrite virtually every binary-arch package's creation rules to install libs in lib64 not lib, and wanting to find a solution for all multiarch capable platforms debian supports, various people are working on so-called multiarch support.


    All relevant information concerning multiarch is assembled on http://people.debian.org/~taggart/multiarch/.

    Die Cylonen wurden vom Menschen erschaffen
    Sie rebellierten
    Sie entwickelten sich
    Sie sehen aus und fühlen wie Menschen
    Einige sind programmiert zu denken, sie seien Menschen
    Es gibt viele Kopien


    Und sie haben einen Plan

    Einmal editiert, zuletzt von tortelini ()

  • Hi,


    wobei 'the quick way' hier gut tut (es sollten allerdings die Libs der 32bit Distri verfügbar sein, um evtl. fehlende händisch einzufügen);


    Beispiel 'skype' :


    Code
    $ cat /etc/ld.so.conf
    /usr/X11R6/lib64
    /usr/X11R6/lib
    /emul/ia32-linux/lib
    /emul/ia32-linux/usr/lib
    /emul/ia32-linux/usr/X11R6/lib
  • hi,


    also unter SuSE-9.3 läuft das 64bit LINUX problemlos "out of the box".
    es sind ja die 32 bit libs auch mit drauf.


    mozilla z.B. hab ich in 32bit installiert, denn nur dann gehen die
    "nur 32bit" plugins wie flashplayer usw....


    VDR rennt in 64bit. (zuerst ging der EPG nicht, wurde aber gefixt).
    beim selbstcompilieren muss man ggf. eine zeile im Makefile ändern. (-fPIC).


    ein anderer VDR user (tuxer) hat mir gesagt, er hat den Athlon64 als VDRserver
    genommen, da der im dauerbetrieb am wenigsten leistung verbrät.


    also ran, in zukunft gibt es eh kein 32bit mehr.

    VDR(Arbeitszimmer):
    INTEL SKYLAKE CORE i5-6500, 16GB, S2-3200, Ubuntu-16.04, DELL 21:9 Monitor


    Einmal editiert, zuletzt von rolandm ()

  • Zitat

    Original von rolandm


    ein anderer VDR user (tuxer) hat mir gesagt, er hat den Athlon64 als VDRserver
    genommen, da der im dauerbetrieb am wenigsten leistung verbrät.


    also ran, in zukunft gibt es eh kein 32bit mehr.



    Den Athlon 64 zu nehmen hat aber nix mit der Frage 32 oder 64 Bit zu tun, der brauch aufgrund der Architektur weniger Strom, aber der läuft auch mit 32 Bit super schnell mit wenig Leistung.


    Und wenn ich daran denke, daß ich jetzt noch Programme mit 16 Bit in vielen Firmen verwendet werden (alte Legacysysteme) - dann wirds schon noch eine Weile dauern bis ich umsteigen "muß" - jedenfalls bevor Tobi die Binaries nicht in 64 bit anbietet, steige ich sicher nicht um .. sieh dir nur die lange Anleitung an ... für keinen Vorteil .. (weil schneller ist er auch nicht, weil die 64 Bit nicht benötigt werden)

    Pentium Quad 8400s, 4 GB RAM, ASUS P5Q-E, 2x Mystique Dual (V2 und V3), 15 TB RAID, yaVDR 0.5a (VDR 2.x)

  • Mein Knecht läuft auch mit 'nem Athlon64 und Gentoo-amd64. Es gibt da einige Softwarepakete, welche noch nicht für 64bit konvertiert wurden. Ich würd mich da vorher erstmal informieren, ob für Deinen Zweck entsprechende Software verfügbar ist.


    gruß, turrican

    LFS 2.6.16.27 + VDR 1.4.2-3

    TT S2300 (modded) DVB-S + CI + TT S1102 DVB-S + P4S533 + C2GHz + 256MB DDRAM + 250GB HD + DVD LG GSA 4081B + IDE>USB SwapRack + 802.11g RaLink rt2500 + TBE's EXTB + TFT

  • ok, VDR rennt. Bis auf die Tatsache das ich folgende Zeilen in der vdr.c auskommentieren musste lief alles bestens.

    Code
    //#ifdef _CS_GNU_LIBPTHREAD_VERSION
    // Check for NPTL and exit if present - VDR apparently doesn't run well with $  
    //  char LibPthreadVersion[128];  
    //  if (confstr(_CS_GNU_LIBPTHREAD_VERSION, LibPthreadVersion, sizeof(LibPthrea$  
    //     if (strstr(LibPthreadVersion, "NPTL")) {  
    //        fprintf(stderr, "vdr: please turn off NPTL by setting 'export LD_ASSU$  
    //        return 2;  
    //        }  
    //     }  //#endif


    die gröbsten unterschiede zu normalen Installation:


    Zitat

    The quick way There is already a minimal set of IA32 libraries packaged for use in a 64bit Debian system. Simply do an 'apt-get install ia32-libs' and you will be able to run most 32bit binaries within your system.


    Zitat

    beim selbstcompilieren muss man ggf. eine zeile im Makefile ändern. (-fPIC).


    Ich verwende jetzt Debian Testing mit:
    Linux vdr-server 2.6.11.12 #1 Thu Jun 16 21:52:30 CEST 2005 x86_64 GNU/Linux


    Gruss, Michael


    PS. Cool'and'quite is ne feine Sache...

  • Hallo,

    Zitat

    Original von MrSputnik
    ...PS. Cool'and'quite is ne feine Sache...


    Kann mir mal jeman, der sich damit auskennt, ob diese sehr nervenschonende Funktion auch mit dem 32bit-Kernel zu bekommen ist?


    Hardy

    Suche: 6 Richtige für die nächste Lottoziehung
    PS: Wer Rechtschreibfehler findet, darf sie behalten!

  • Hi,


    Zitat

    Original von HFlor
    Hallo,


    Kann mir mal jeman, der sich damit auskennt, ob diese sehr nervenschonende Funktion auch mit dem 32bit-Kernel zu bekommen ist?


    Logo, dat funzt sogar unter WIn98 :hat2

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!