This document is a step by step guide meant to provide information in order to help you running Linux on SPARC based computers, As these computers are quite different from PCs an hardware section will provide you with the needed information in order to understand how they work and what can be expected from the various CPUs and models.
I am not a SPARC specialist, nor a Solaris or Linux guru, I am just someone who is realy found of well engineered products, and wish to help you in choosing your hardware and finding information. Thus I have tried to write down this document in order to ease your path.
I hope this HOWTO will help you and you will have a lot of fun with your SPARC Computer.
Kim Hyun-Gyu <babyworm@atlas.korea.ac.kr> provide a Korean translation. You can read it online at http://kldp.org/HOWTO/html/SPARC-HOWTO/
This document deals only with SPARC based
computers, in order to check, just
type uname -m
command and you should read
something like sparc4x
where x is blank,c,d,m,u
if the system runs Solaris, or sparc
for 32 bits SPARC architectures
and sparc64
for 64 bits SPARC architectures if it runs Linux.
2.x.y
SPARC stands for Scalable Processor ARChitecture, it derives from research done between 1984-1988 on the RISC architecture at UC Berkeley. It exists 3 versions of this archiecture, SPARC-V7, SPARC-V8 (32 bits) and SPARC-V9 (64 bits). As you are likely to encounter a lot of implementations of the SPARC architecture, in the next section, the main features of theses processors are summarized.
This is quite obsolete, it is an implementation of the SPARC-V7 ; its main feature are an Integer unit (IU), an external Floating Point Unit (FPU), an unified data + instruction 64KB direct associative cache, and an Memory Managment Unit (MMU). There is a 4 stage pipeline for the integer instructions (fetch F, decode D, exec E, update WB) FPU and IU are synchronized.
This is Texas Instrument and Sun's brainchild, it is usualy found at around 50Mhz clok rates featuring up to 1MB of L2 cache, it is available both as single and dual processor modules (SparcStation 10 and SparcStation 20). The higher clock frequency I have encountered so far is 60Mhz.
On a technical point of view this is a SPARC-V8 implementation, it is a superscalar processor, having 2 caches, one for instruction the other one for data.
This is once again Texas Instrument and Sun's brainchild, it can be found in the SparcStation Classic, SparcStation LX, at frequency up to 50Mhz. Its derivative, the Micro SPARC II can be found in the SparcStation 4 and SparcStation 5 at frequencies up to 110Mhz.
On a technical point of view, its main features are a high level of integration, having 2 caches, one for instructions, the other one for data.
It is not possible to add an L2 cache. If you wish to learn more about the MicroSPARC processor you can browse Sun's Ultra SPARC ressources.
This processor was introduced by ROSS in 1993, it is usualy found in the SparcStation 10, and SparcStation 20, at frequencies up to 150Mhz (I have heard of 200Mhz dual processor modules, but Have not witnessed one yet). It can be found on single or dual processor modules.
On a technical point of view it is an implementation of the SPARC-V8, it is superscalar. It can be found with L2 cache up to 512KB
This is a radhard SPARC V7 microprocessor designed to be used on the space segment.
It comes as a single unit or as a three chip
package. Main manufacturer is ATMEL
in Nantes,
France. At least, one software vendor claims to have GNU/Linux running
on this CPU, this is for the
http://dse.cyberclwn.com/sparc-rtems-erc32.htm. This project has not been updated since March 2001. As I have not had the opportunity to check this claim. I am more than doubtful.
This is also a radhard implementation of the SPARC V8 designed to be used on the space segment. It is the ESA's brainchild and the lead designer is jiri gaisler. More information can be found on LEON's website: http://www.gaisler.com/leonmain.html
The 2.4 and 2.5 kernel series are not yet supported, however the 2.0 kernel
series is supported by the uClinux
MMU less
GNU/Linux distribution.
This distribution has been built at ESA/ESTEC December 26 2003
on a SuSE 8.0 GNU/Linux distribution
with gcc version 2.95.3 20010315 and a 2.4.18 kernel.
Hereafter is the boot sequence and a sample session inside the
tsim-leon simulator.
piou@linux:~/uClinux-dist/images> ./tsim-leon -nfp image.elf TSIM/LEON SPARC simulator, version 1.1.4a (evaluation version) Copyright (C) 2001, Gaisler Research - all rights reserved. This software may only be used with a valid license. For latest updates, go to http://www.gaisler.com/ Comments or bug-reports to tsim@gaisler.com FPU disabled serial port A on stdin/stdout allocated 4096 K RAM memory, in 1 bank(s) allocated 2048 K ROM memory icache: 1 * 4 kbytes, 16 bytes/line (4 kbytes total) dcache: 1 * 4 kbytes, 16 bytes/line (4 kbytes total) section: .text at 0x0, size 252944 bytes section: .data at 0x40000000, size 38452 bytes section: .romfs at 0x3dc10, size 67584 bytes tsim> g resuming at 0x00000000 aCDG512k RAM Found my key Moved .data Found my key uClinux/Sparc Flat model support (C) 1998-2000 Kenneth Albanowski, D. Jeff Dionne LEON-2.1 Sparc V8 support (C) 2000 D. Jeff Dionne, Lineo Inc. LEON-2.2/LEON-2.3 Sparc V8 support (C) 2001 The LEOX team <team@leox.org>. Calibrating delay loop.. ok - 6.68 BogoMIPS Memory available: 3904k/4080k RAM, 0k/0k ROM (176k kernel data, 247k code) Swansea University Computer Society NET3.035 for Linux 2.0 NET3: Unix domain sockets 0.13 for Linux NET3.035. uClinux version 2.0.39.uc2 (root@linux) (gcc version 2.95.3 20010315 (release)) 6 Thu Dec 26 18:28:01 PST 2002 LEON serial driver version 0.9 ttyS0 (irq = 3) is a builtin LEON UART Blkmem copyright 1998,1999 D. Jeff Dionne Blkmem copyright 1998 Kenneth Albanowski Blkmem 1 disk images: 0: 3DC10-4E40F (RO) VFS: Mounted root (romfs filesystem) readonly. Sash command shell (version 1.1.1) /> pwd / /> cd bin /bin> pwd /bin /bin> ls sh /bin>
The Ultra SPARC processor is an extension of the SPARC-V9 architecture, it is a 64 bits processor, it features some video processing instructions. It is found in all the computer whose name start with Ultra.
The Ultra SPARC II is an improvement of the Ultra SPARC, the Ultra SPARCIII is actually the second generation of Ultra SPARC processors, it was first introduced in the SunBlade 1000 Workstation. If wish to learn more about the UltraSPARC processors you can browse Sun's Ultra SPARC ressources.
This processor is based on the SPARC V9 and is made by Fujitsu It is a 64bits CPU with some very interesting error handling features such as ECC memory for the L1 cache, hardware instruction retry, error classification.
There is a 64 bit virtual address space and 43 bit physical address space. It is used in the PRIMEPOWER high end servers to mainframe class of Fujitsu's offering.
The cache is organized as :
More information can be found on the http://www.fujitsu.com/downloads/PRMPWR/JPS1-R1.0-SPARC64V-pub.pdf whitepaper.
You may read the CPU-Design-HOWTO, this HOWTO has a lot of interesting links when it comes to studying the CPUs.
To summarize, the 32 bits workstations are the:
For more information on the SparcStation 5, 10, 20 you can read Sun's documentation online or download it available.
The following model have an 64 bits UltraSPARC architecture (sun4u). SunUltra 1, 2, 5, 10, 30, 60, 80 and SunBlade 1000, 1500, 2000. The SunUltra 2, 60, 80 and SunBlade 1000 are SMP capable, with the Ultra 80 and SunBlade 1000 and 2000 accepting up to 4 CPU modules, the SunUltra 2 and 60 accepting only 2 CPU modules.
The SunBlade 2000 is the latest one featuring Sun's latest marvel the Ultra III CPU, at a premium price of course. You can have a summary of the UltraWorkstation still in production at Sun's website.
A lot of information has been compiled in the Sun hardware reference that is found on many sites, or on SunHelp 's website.
At first, a reference like SM61 or RT-200-D-125/512 seems to be, to say the least, quite cryptic. Actually, understanding theses references is really easy.
Theses CPUs's naming scheme is RT-a00-b-freq/cache
where
a
is a digit:
1
SparcStation 10.2
SparcStation 20.6
SPARC MP600 ( not exactly a workstation ).b
is a letter:
D
Dual CPU.Q
Quad CPU.S
Single CPU.freq
The frequency expressed in Megahertz.cache
The amount of cache memory expressed in Kilobytes.When these modules are in a workstation the naming convention is
HSxy, for example ywing
is a SparcStation 20 HS22,
thus it is easier to have a look inside the workstation.
This table is extracted from the FAQABOSS
Name Speed( MHz ) Cache( MB ) Number of SuperSparc Processors Series SM20 33 0 1 I SM30 36 0 1 I SM40 40 0 1 I SM41 40 1 1 I SM50 50 0 1 I SM51 50 1 1 I SM512 50 1 2 I SM51-2 50 2 1 I SM61 60 1 1 I SM61-2 60 2 1 I SM71 75 1 1 II SM71-2 75 2 1 II SM81 85 1 1 II SM81-5 85 2 1 II
Warning: the SM100
is a RT-600-D-40
Cypress manufactured SPARC compliants processors; AFAIK their naming scheme is CYnnn.
As you can see, this is easy to understand.
This is a family of Network computers that used to be manufactured by Sun, there is a very good JavaStation-HOWTO about it.
You have decided to buy a SPARC based computer, now you can tell what CPU each model sports, but can you tell how that particuliar model looks like? How its is inside?
Do not worry, this section will help you on that topic as well as providing you with some hints on how to inspect and test the hardware.
PC hardware is everywhere and usualy one is quite familiar with it, this is not exactly the case with SPARC based hardware, even more when it comes to the innards of a computer. The good news is that it exists some sites on the web, where you can find pictures of Sun hardware, with some very detailed shots, thus you should be able to instantly identify the model and its condition prior to buy it. The two main site where I usualy go are:
On the one hand, it is very easy to find information on Sun hardware, while it can be difficult to find it for clone systems on the other hand it should be more fun to work with exotic hardware.
Clone systems have been or are still manufactured, at least by:
Of course if you buy first hand hardware everything should be fine, but if you decide to go for second hand hardware, you will have to decide how you want to buy it, and you should be able to test it by yourself.
Second hand hardware can be brought from Sun as refurbished hardware, at auction websites, or in specialised stores, or directly from companys that upgrade their hardware.
When it comes to second hand hardware one has to be as cautious as possible about the source, and the condition of that hardware.
For the source of the hardware, if you can track it, it is a very good point. If you can't track it, it is up to you to decide if you trust the seller or not ( If the seller cannot give you the reference of the hardwre and if, obviously he/she is clueless about Sun hardware, you should switch to condition red ).
Another interesting point is to see if check is accepted as a payement.
If you can check the hardware before buying it
then first have a general look at it, search for
cracks, for stains; check the connector's pin. If this first
inspection is OK, then ask to see the inside, look for spills, watch
carefuly the connectors, then if it is OK ask to see it running,
watch carefully boot messages, issue the dmesg|more
or if it runs Solaris you can issue the more /var/adm/messages
command,
and also very important listen to your computer, do you hear unusual
noises? Does it smell OK?. Then enter the OpenBoot by the
stop+a
command and run some tests ( see the OpenBoot section
).
When you have decided to purchase it, it is very important that you
always make sure that the computer you are purchasing is the one
you have tested: always keep an eye on it, do not let someone go to
the backoffice with it for example, do not accept to leave without
your computer.
Then, when you are at home, recheck it as if it was the first time you see it. If it comes with CDROM drive, try to mount/umount a few CDs and read them in order to check that device. If there is a floppy disk read/write/format a few floppys, this should be a good test.
Of course, it exists tools to automaticaly test the hardware, but usualy you do not have them when you need them, thus the script below relies only on ressources provided by a Linux base system.
You should run the following script for three days, basicaly it is going to use the CDROM, floppy and hard drive, and to reboot the computer every 3 hours. This should stress it,
# # Enter this in the crontab(5) # run the torture.sh script every 3 hours if possible # 0 */3 * * * /root/torture.sh
torture.sh
is
#!/bin/sh # # these are for controlling the loops # the CDLIMITS and FDLIMITS # are for the CD and FD loops # CPT=1 CDLIMIT=3 FDLIMIT=10 # # to which devices are # CDROM and floppy attached # CDROM=/dev/sr0 FLOPPY=/dev/fd0 # # where is the program we # intend to compile PATH=/path_to_big_package_to_compile # # this section si meant to # test the CDROM and floppy drives # comment what you do not need to # test while [ $CPT -le $CDLIMIT ] do # # CDROM drive # mount -rt iso9660 $CDROM /cdrom find /cdrom -exec cat {} \; >>/dev/null 2>&1 umount /cdrom CPT=$(($CPT+1)) done # # floppy drive # CPT=1 while [ $CPT -le $FDLIMIT ] do mke2fs -c $FLOPPY >/dev/null 2>&1 mount -t ext2 $FLOPPY /floppy cd /bin/ cp dd ps echo sh /floppy find /floppy -exec cat {} \; >>/dev/null 2>&1 umount /floppy CPT=$(($CPT+1)) done # # The big, intensive # compilation # cd $PATH # # now compile # make # # # we remove every .a .o .s and every executable # find $PATH -name "*.[aos]" -exec rm -f {} \; >/dev/null 2>&1 find $PATH -exec test -x {} \; -exec rm -f {} \; >/dev/null 2>&1 # # time to reboot # reboot
Of course you should run this script manualy once in order to know how much time it requires to complete, this is just an idea on how to automate things.
There exists SPARC based, laptops.
They are not very widespread but, they are actually very good SPARC workstations.
There exists a Linux Mobile Guide
that provides you with the needed
informations about GNU/Linux on laptops.
You can read it there:
http://www.tuxmobil.org/Mobile-Guide.db/Mobile-Guide.html
Today there are some manufacturers of SPARC based laptops. You can access their websites at
Nearly ten years ago in 1994, Sun microsystems introduced the SPARCStation Voyager (ss240). This computer was a Sun4m architecture, powered by a microSPARC II processor. It is a very compact computer, behing a hybrid between a desktop and a Laptop. It has the footprint of a very compact workstation with a builtin color LCD display, PCMCIA and InfraRed ports with a 2"5 SCSI harddrive. I have seen one at the CCC in Berlin, runing Debian GNU/Linux but the InfraRed and PCMCIA ports are not supported. Its datasheet is actually very impressive:
More information about this computer can be found on Sun's website at:
GNU/Linux is known to run on the following systems:
http://sunsite.ulatina.ac.cr/Unix/Linux/Splack/ sparc/splack-8.0/kernels/sun4u.s
GNU/Linux is known to run on the following systems:
http://sunsite.ulatina.ac.cr/Unix/Linux/Splack/ sparc/splack-8.0/kernels/sun4u.s
GNU Linux runs fine on these systems:
GNU/Linux runs on the following servers from this manufacturer:
At least one of their supercomputers, the AP1000+,
runs GNU/Linux. This is a distributed memory multi-computer. It is used in the
CAP
program which is a collaborative research program between
Fujitsu Laboratories and the
Australian National University.
This computer was used in the phase 1 of this
project.
They have managed to run Linux on a 16 node computer with 16 MB ram per CPU
module. More information about this project can be found on this page:
http://cap.anu.edu.au/cap/projects/linux/
More information can be found about Fujitsu's offering on this page: http://www.fujitsu.com/support/computing/server/unix/documents/
Actually Linux on SPARC architecture comes in two flavors:
You are very lucky, it seems that you can pick the one you like. In order to help you with this task here are some links, that should help you to make an informed decision.
This distribution is based on the RedHat 7.3 SPARC distribution. The homepage is: http://www.auroralinux.org/ It is on the rise. There exists 3 mailing lists. You can join them at http://lists.auroralinux.org/mailman/listinfo
The latest version codenamed wombat can be downloaded on the ftp://auroralinux.org/pub/aurora/build-1.91/ ftp site.
Debian GNU/Linux runs on SPARC platform; you can find a lot of informations about this port at the http://www.debian.org/ports/sparc/ webpage
You can join the mailing list by sending a mail to < debian-sparc-request@lists.debian.org > with subscribe as the subject.
This is a SPARC and SPARC64 distribution, more informations can be found in the Gentoo handbook at http://www.gentoo.org/doc/en/handbook/draft/handbook-sparc.xml
This distribution is based on the RedHat and is developed in Poland. They do have a SPARC 32 port. More information can be found at their homepage http://pld.org They also provide some mailing lists. More information can be found there: http://mail.pld.org.pl/mailman/listinfo/
The latest RedHat Linux distribution for the SPARC architecture is the 6.2; you can download it at http://www.linuxiso.org/download.php/243/zoot-sparc.iso for example.
There exists a mailing list about Linux and RedHat on SPARC Processors, you can access it there: http://www.redhat.com/mailman/listinfo/sparc-list
There exists a port for the SPARC architecture, more information is available at http://www.slackware.com/ports/sparc/
Actually, the SPARC-Linux Xterminal Package is not a distribution, it is a way to use a diskless SPARCStation as an X terminal. This is a a very convenient package. More information can be found at http://www.pucebaboon.com/SLXT/
The Linux Terminal Server Project (LTSP) is a convenient way to turn a SPARC or an Ultra SPARC workstation into a diskless workstation. The project's homepage is http://www.ltsp.org/
Step by step instruction to setup a client on an Ultra SPARC can be found at the following website: http://math.univ-lille1.fr/ltsp-sparc/
It is meant to be Slackware Compatible for SPARC. Its homepage is http://sourceforge.net/projects/splack
The SuSE Linux 7.3 distribution is quite complete, you have 5 ISOs to download. You can grab it at the following URL: ftp://ftp.suse.com/pub/suse/sparc
In the subdirectories you will also find bonus software such as KDE libraries and programms.
There is a mirror site located in Germany: ftp://ftp.gwdg.de/pub/linux/suse/ And, there are some extra files on the SuSE's server. You can join the mailing list by sending a blank mail to < suse-sparc-subscribe@suse.com > More information can be found at: http://www.suse.com
This is a Japanese distribution and there exist a SPARC port. It is an rpm based distribution. From the documentation, it supports both SPARC 32 and SPARC 64. The documentation (in Japanese ;-) ) can be read online at http://www.vinelinux.org/sparc/2.1.5/install-vine-sparc-2.1.5.html
To install Linux on a SPARC based computer, should be strightforward if you follow the informations provided by your distribution.
To boot from a floppy drive you have to have an install image on a
floppy disk and to issue the boot floppy
from the OpenBoot.
If your computer does not have a CDROM or a floppy drive, you can always try
to perform a network installation using NFS
as explained by
this French document:
http://www.linux-france.org/article/materiel/sparc-install/Sparc-netinstall.html
. Basicaly, you have to set up an NFS
server and to boot your
computer using the
boot net vmlinux nfsroot=192.168.52.12:/tmp
in order to access the image that is exported by the
192.168.52.12
computer on the /tmp
directory.
Another source of information, this one is written in English,
is this FAQ from the UltraLinux website (
http://www.ultralinux.org/faq.html#q_5_9
)
In this section, you will be given an overview of what is the OpenBoot, and you will be given the main commands you need to know in order to test your hardware and to install Linux.
If you are used to PC hardware, you are used to interact with its BIOS. SPARC computers have an Openboot, it may seem to be like your BIOS, but it is actually far more powerfull. The Openboot performs the following tasks:
In this section, we will juste use a small set of the OpenBoot's
capabilities, in order to test hardware and to boot the system.
First you have to enter in the OpenBoot, just hit the stop
and a
keys simultaneously. Then you should see a ok
prompt, if instead you see the >
prompt then type
n
. Now you can proceed to the next section.
The OpenBoot, gives you a lot of commands to test and to gather information about your hardware.
.version
Displays version and date of the startup PROM.banner
You will see the banner, that is displayed at
power-on. It is useful to gather some data about CPUs.pcia-probe-list
Test PCI on computers that have a PCI bus.module-info
This will display the Buses clockspeed,
and processors frequency and amount of cache. probe-scsi
This will test all devices connected to the on board
SCSI controler. probe-scsi-all
This will test all devices connected to all
the SCSI controlers.show-devs
This displays all installed and probed devices.show-sbus
Use this, if you just want to display a list of
installed and probed SBus devices.
test-all
This will test all devices in the
system that have a self test program.test floppy
If a floppy drive is installed, it will test it
reminding you to have a formated floppy disk inside.test-memory
If the system diag-switch?
is set to
true
, this will test the memory.test net
This will test the network interfaces watch-aui
This will test the AUI ethernet link.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort.watch-clock
This will test the real time clock chip, it
will tick once a second. To stop this test strike any key.watch-net
This will check the network connection ( both
AUI and TP ). You will see '.' for good packets and 'X" for bad
ones. Strike any key to abort.watch-net-all
This will test all Ethernet interfaces.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort. When you abort one, it will test the next one.watch-tpe
This will check the TPE ethernet interface.
You will see '.' for good packets and 'X" for bad ones. Strike any key
to abort.
The OpenBoot allows you to boot from various devices, the command you are the more likely to enter are below.
boot
Boot kernel from default device.boot cdrom
Boot kernel from CDROM drive.boot net-tpe
Boot kernel from network urnel from CDROM drive, this is the
command you are the more likely to type when installing Linux.boot net
Boot kernel from network using auto-selected
interface.boot net-aui
Boot kernel from network using AUI
interface.boot net-tpe
Boot kernel from network using TPE
interface.boot tape
Boot default file from tape.
eject-floppy
Ejects the floppy.power-off
Poweroff the computer.power-off
For more informations on the OpenBoot you can read this FAQ at
Depending on their architecture, the computers are likely to feature one of the following hard drive buses.
An SCSI connector is located at the rear of the Computer; the SCA chanel is found on the internal bus of the SPARC Worstation. It can be basicaly seen as an SCSI bus that provides power supply and assigns SCSI ID to the peripherals.
This is found for example in an Ultra 5 or Ultra 10 computers This bus is the one you can find in your intel box.
This is the FiberChannel bus. It is used by the SunBlade 1000 workstation.
The easiest way to install linux on SPARC computer is to use a CDROM. If your computer does not have a CDROM you can plug an external SCSI CDROM drive, but there are two things to do or you are doomed to fail:
boot cdrom
command, the CDROM is
mapped to ID number 6.
The Sparc Improved Boot LOader ( SILO ), is the boot loader that is used in the SPARC architecture. It allows you to boot Linux, Solaris or SunOS. It can load a Linux kernel from ext2, iso9660, UFS or ROMFS. From the SILO's README:
This is the first attempt at a complete boot loader for Linux on the Sparc. Because of the lack of space on the bootblock, we have to do it in two steps, the first step is a very simple loader based on Peter Zaitcev's silo (we will call this the first stage loader) which should fit in 512B and its sole purpose is to load a more complete bootstrap loader, herein refered to as the second stage boot loader. The cool thing about the second stage loader we implemented is that it makes use of the ext2 library (provided with the ext2fs tools) and some ufs code, and thus allows the loader to access any file on a ext2 fs and ufs, uses silo.conf, handles gunzipping and a lot of other things. This is different from Linux/i386 lilo which needs a map for each kernel. In silo we just keep one map file for the second stage loader, we don't expect you to be changing the second stage loader on your daily routine (you can do so, you will just need to use a tool to reinstall the maps).
Actually, IMHO it is easier to use than LILO.
If you have already compiled a kernel on x86 architecture there is just a little difference when you wish to compile a kernel on SPARC architecture.
you do not type
#make zImage #make modules #make modules_install
#make vmlinux #make modules #make modules_install
linux/System.map
to your bootfile directory (eg. /boot
), and rename this file to
System.map-<kernel-version>
linux/vmlinux
to your bootfile directory, and rename this file to
vmlinux-<kernel-version>
/etc/silo.conf
, and add your new kernel to this file.If you have trouble compiling your kernel, maybe it needs to be pached. There are many patches floating around on the net. There exists a website that put some of them online on a regular basis both for the stable and unstable branches, up to the 2.6.x kernel series. Those patches apply to the hardware used by the site's owner and this should be considered as a very good starting point to be adapted to your hardware. More information can be found at http://osinvestor.com/sparc/ You can also email the site's owner, Rob Radez : <rob@osinvestor.com> If you are unfamiliar with paches he also made them available as debian packages.
Most of the sun4m workstation have a special connector for the keyboard. In this case the mouse is connected indifferently to left or the right side of the keyboard. Some computers have a PS2 connector, it is very easy to spot the difference. The keyboards you are the more likely to encounter are the type4 and type5.
At the time of this writting, I didn't manage to have mouse support on the Sun Blade 100. Things should become easier in the near future.
XFree
, usually, runs fine on theses systems.
The table below helps you choose the XFree86 4.2.0 server that matches your
graphic adapter:
Graphic Adapter Xserver Sun Creator 3D sunffb Sun Elite 3D sunffb Sun GX suncg6 Sun Leo (ZX) sunleo Sun TCX suntcx Sun Turbo GX suncg6 Sun bw2 sunbw2 Sun cg14 suncg14 Sun cg3 suncg3
There is a catch with the 13W3 video connector that equips some of the framebuffers you may encounter. One may try to plug it on a VGA monitor using an 13W3 to VGA adaptor that is sold on the market. The problem is that SGI and Sun Microsystems do not have the same definition of this standard and depending of the adapter you buy, this may work or not (you know Murphy ...). As a rule, idealy you should try it before you buy.
Ouaich, SMP is supported, and I am sure that ROSS's dual CPU modules are supported as you can see by yourself:
piou@ywing:~ > cat /proc/cpuinfo cpu : ROSS HyperSparc RT625 or RT626 fpu : ROSS HyperSparc combined IU/FPU promlib : Version 3 Revision 2 prom : 2.25 type : sun4m ncpus probed : 2 ncpus active : 2 Cpu0Bogo : 125.33 Cpu1Bogo : 125.33 MMU type : ROSS HyperSparc invall : 0 invmm : 0 invrnge : 0 invpg : 0 contexts : 4096 CPU0 : online CPU1 : online piou@ywing:~ >
The SparcStation 10 and SparcStations 20 are SMP capable computers and according to the FAQABOSS the following combinations are known to work :
And, as stated earlier, CPU modules in SparcStations 10 and can run a different clock speeds, the following ones __SHOULD__ work:
How does it performs? Well, it is fast, really fast. Some of the java
Demos can run faster on a dual HyperSparc 125Mhz 128MB ( ywing
) than on a dual
celeron BP6 433@433Mhz 192MB ( calimero
). The same applies for the Gimp. When it
comes to compiling calimero
runs faster than ywing
. Both computers
running 2.2.16 kernel and calimero
's hard disk subsystem is full SCSI.
One important detail when you plan to have different CPU modules in your computer is to have the same kind of modules, you cannot mix SuperSparc and HyperSparc for example, but you can have an odd number of CPUs, for example 3. They are said to be able to run modules at different clock speed as written in this article form AcesHardware , but I have not witnessed it.
ywing
has been upgraded to quad-CPU. You can read the
kernel's message:
cpu : ROSS HyperSparc RT625 or RT626 fpu : ROSS HyperSparc combined IU/FPU promlib : Version 3 Revision 2 prom : 2.25 type : sun4m ncpus probed : 4 ncpus active : 4 Cpu0Bogo : 125.33 Cpu1Bogo : 125.33 Cpu2Bogo : 125.33 Cpu3Bogo : 125.33 MMU type : ROSS HyperSparc invall : 0 invmm : 0 invrnge : 0 invpg : 0 contexts : 4096 CPU0 : online CPU1 : online CPU2 : online CPU3 : online
and its main memory is now 256MB:
total: used: free: shared: buffers: cached: Mem: 263028736 29114368 233914368 22958080 1695744 12779520 Swap: 133849088 0 133849088 MemTotal: 256864 kB MemFree: 228432 kB MemShared: 22420 kB Buffers: 1656 kB Cached: 12480 kB BigTotal: 0 kB BigFree: 0 kB SwapTotal: 130712 kB SwapFree: 130712 kB
So I have performed an empirical proftpd
compilation test using the
make -JN
. The results are:
with make real 3m27.466s user 3m15.670s sys 0m12.030s with make -j2 real 1m52.670s user 3m27.210s sys 0m15.310s with make -j3 real 1m22.560s user 3m43.910s sys 0m18.070s with make -j4 real 1m13.582s user 4m2.200s sys 0m22.830s with make -j5 real 1m13.445s user 4m4.060s sys 0m22.640s with make -j8 real 1m15.550s user 4m1.840s sys 0m22.960s with make -j 10 real 1m20.091s user 4m2.440s sys 0m22.170s
As expected the best results are with make -j5 ( one instance per CPU + one ready to enter when a cache miss occurs ); then N increasing the results are starting to worsen.
As a conclusion, those sun4m
SMP systems will be very
interesting when Gimp 2.0 will be available because of multitreading
and paralelization of algorithms.
If you want to learn more about SMP and Linux you can read the
SMP-HOWTO
http://www.tldp.org/HOWTO/SMP-HOWTO.html
The sound works fine on my SparcStation 20 and a 2.4.x kernel series. Most of the people I know report succes with the 2.4 kernel series.
If you plan to use an older kernel, you can read the Linux/Sparc audio webpage at sparcaudio which is a very good source of information about Sound support on Sun's SparcStations.
Sun workstations ususaly have 2 serial ports, but on sun4m workstation there is usualy only one serial connector at the rear, you need a special Y cable in order to have access to both ports.
The following sites are given for your information, I am independent from them and does not represent them. If you would like to suggest a website or to add any information do not hesitate to email me.
Windows NTM
.http://wwws.sun.com/software/linux/compatibility/ultralinux/index.html
.ps
format.
Among the various Auction websites available on the net you can try theses ones. Remember to be very cautious when you purchase hardware ( see the Buying a SPARC computer section. )
There exists a very reliable source of used Sun workstations in France:
solutions-rl
Among the many people who showed me how great Unix and the Unix computers can be, some people have earned a special place I would like to thank them:
Also many thanks to "old crocodile" virgile for the time he spent at the library helping me to get the big picture.
Some people gave a lot of time and ressource to help me with this project, hereafeter is their names sorted by alphabetic order:
Copyright © 2000-2004 by Lionel, trollhunter Bouchpan-Lerust-Juéry. This document may be distributed under the terms set forth in the GNU Free Documentation Licence http://www.gnu.org/copyleft/fdl.txt .
This documentation is distributed in the hope that it will be useful, but without any warranty. The information in this document is correct to the best of my knowledge, but there's a always a chance I've made some mistakes, so don't follow everything too blindly, especially if it seems wrong. Nothing here should have a detrimental effect on your computer, but just in case I take no responsibility for any damages ocurred from the use of the information contained herein.
In this document you will encounter some commercial products and brands. Theses products are cited for information purpose, it is not an endorsement from the author. The trademarks belong to their respective owners.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being : "Copyright, Disclaimer and Trademarks" "Preface.", "SPARC, which one ?", "Buying a SPARC computer.", "SPARC based laptops", "The wonderful SparcStation Voyager", "Sun's Netra servers", "Sun's Enterprise servers", "Tatung's Workstations", "Tatung's SPARC servers", "Fujitsu's supercomputers", "Linux on SPARC: 2 kernels.", "Choosing a distribution.", "Installing Linux.", "Working with the Openboot.", "Hard drive buses.", "CDROM: specific settings.quot;, "SILO.", "Keyboard and mouse.", "X Window.", "SMP.", "The sound.", "Serial port.", "Ressources.", "Thanks and Credits.", "Revision History.",
, with the Front-Cover Texts being "title" and "abstract." , and with no Back-Cover Texts .
This text is included in the Linux Documentation Project http://tldp.org/HOWTO/HOWTO-INDEX/howtos.html .
If you wish to mirror it or to translate it, please contact me.
Lionel, Trollhunter Bouchpan-Lerust-Juéry <trollhunter@linuxfr.org> or at <trollhunter@free.fr>