[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: improving ssh2 performance on SPARCv8/SPARCv9 systems



Ryan Kirkpatrick wrote:
> On Tue, 26 Mar 2002, Raoul Borenius wrote:
>> "debian-sparc","gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer
>> -Wall -DBN_DIV2W::-D_REENTRANT:-ldl:BN_LLONG RC4_CHAR DES_UNROLL
>> BF_PTR:asm/sparcv8.o:::::::::dlfcn:linux-shared:-fPIC",
>> 
>> Without the '-DBN_DIV2W' and 'asm/sparcv8.o' the library was as slow as before
>> on my box.
> 
> 	In case any one is interested, this tweak also helps ssh1
> performance on Sparcs running Potato. The build line is slightly different
> for the libssl version found in potato (libssl-0.9.4-5), here is the
> modified version:
> 
> "debian-sparc","\$(TOP)/debian/libtool gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 \
> -fomit-frame-pointer -Wall -DBN_DIV2W::(unknown)::BN_LLONG RC4_CHAR \
> DES_UNROLL BF_PTR:asm/sparcv8.o::",

I built both OpenSSL 0.9.4 on Potato and 0.9.6 on Woody following these
instructions. sshd works fine, and connection times were down by nearly
two thirds on both the machines I tested it.

However, when trying to ssh to a machine for which the host key is not
already known, I got "Illegal instruction" on both the machines.
Disassembling it in gdb shows it dies on a "udiv" instruction, which I
thought was the entire point of this optimization.

The woody machine is a 'SUNW,HWS S310', with the following /proc/cpuinfo:
cpu             : Texas Instruments, Inc. - MicroSparc
fpu             : SuperSparc on-chip FPU
promlib         : Version 3 Revision 2
prom            : 2.9
type            : sun4m
ncpus probed    : 1
ncpus active    : 1
BogoMips        : 35.94
MMU type        : TI Viking
invall          : 0
invmm           : 0
invrnge         : 0
invpg           : 0
contexts        : 65536

The potato machine is a 'SUNW,SPARCstation-20' with /proc/cpuinfo as
follows:
cpu             : Texas Instruments, Inc. - SuperSparc 50
fpu             : SuperSparc on-chip FPU
promlib         : Version 3 Revision 2
prom            : 2.22
type            : sun4m
ncpus probed    : 2
ncpus active    : 2
Cpu0Bogo        : 74.75
Cpu1Bogo        : 74.95
MMU type        : TI Viking/MXCC
invall          : 0
invmm           : 0
invrnge         : 0
invpg           : 0
contexts        : 65536
CPU0            : online
CPU1            : online

Both machines report "00000008" in
/proc/openprom/TI,TMS390Z50@f,f8fffffc/sparc-version

The woody machine has the standard 2.2.19 woody kernel, while the potato
machine runs a custom  2.2.20pre11-ext3-0.0.7a kernel.

Does anyone have any ideas why this fails?

-- 
ilmari



-- 
To UNSUBSCRIBE, email to debian-sparc-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: