SCIENTIFIC-LINUX-USERS Archives

November 2004

SCIENTIFIC-LINUX-USERS@LISTSERV.FNAL.GOV

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Perret Yannick <[log in to unmask]>
Reply To:
Date:
Mon, 22 Nov 2004 10:41:15 +0100
Content-Type:
text/plain
Parts/Attachments:
text/plain (81 lines)
Hi all,

after many tries, I finally manage to install the all set
of i386 libs over a 64 bits SL 3.0x only using the 'rpm'
tool.

See after if you are interested by the way we manage
to perform that.

My problem is that I tried some performance tests
on that machines. On the same machine (a dual-opteron
with 2GB from sun) I have some installed in 32 bits
and a test one installed in 64+32 bits.

And 32 bits programs are slower on the 64+32 than
on a "native" 32 bits installation.
As opterons are not supposed to be slower when
executing 32 bits code, I can't find the reason of that
performance problem... In addition with a 64 bits
system we should hope that some system-related
operation (memory management...) would be faster,
even for 32 bits programs.
The performance factor is 1.15 slower on a 32+64
regards to a pure 32.

Anyone has an idea of the reason ?
Anyone has an idea of a way to obtain at least a
identical performance ?



-> installing 32 bits over 64 bits:

The "magic" way to do it is to use the option
'--excludepath=XXX' many times. I used a set of
'excludepath' in order to prevent installation on each
directory that is not supposed to get libraries (it
would have been easier if a '--onlypath=XX' had
existed).

So the way to install the i386 libs over an installed
64 bits SL is:

- install the glibc-32bits...x86_64 RPM if not present

- build the list of all the installed x86_64 RPMs

- remove from this list the kernel related packages

- remove glibc packages (treated by glibc-32bits)

- remove module-related packages (i.e. i386 version
of openAFS kernel is not needed at all!)

- remove all RPMs that cannot be found in the i386
repository (some are missing, some have a different
version number)

- remove all RPMs that are 'noarch' (not needed)

- add the i386 specific RPMs (if any) to the list. In
my case I added the compat-*.i386.rpm to the list.

- install the full set of RPMs with the command
rpm -i $ORPM `cat the_complete_list_of_rpms.lst`
where ORPM is the following set of options:

ORPM="--excludedocs --excludepath=/sbin --excludepath=/bin \
--excludepath=/usr/bin --excludepath=/usr/sbin \
--excludepath=/usr/local --excludepath=/usr/share \
--excludepath=/usr/lib/gconv --excludepath=/usr/X11R6/lib/X11/fonts/ \
--excludepath=/usr/include --excludepath=/etc --excludepath=/boot \
--excludepath=/opt --excludepath=/opt \
--excludepath=/var --excludepath=/lib/kbd/ --excludepath=/usr/lib/rpm \
--excludepath=/usr/kerberos/bin \
--excludepath=/usr/X11R6/lib/X11/locale/common \
--excludepath=/usr/kerberos/include"
These 'excludepath' were defined "by the hand", by removing pathes
that contain conflicting files. You may have to add new ones if
your RPM set is different.

ATOM RSS1 RSS2