Difference between revisions of "Config"
m |
|||
| Line 13: | Line 13: | ||
<enter password> | <enter password> | ||
| − | If not already | + | If not already installed, install TC-Shell: |
yum install tcsh | yum install tcsh | ||
| Line 114: | Line 114: | ||
setenv NMROOT $ICEPKG/nmxxx | setenv NMROOT $ICEPKG/nmxxx | ||
setenv JAVAHOME $ICEPKG/ | setenv JAVAHOME $ICEPKG/ | ||
| + | |||
| + | #!/bin/csh | ||
| + | # | ||
| + | # Red-Hat System csh.cshrc | ||
| + | if ( -f /etc/csh.cshrc ) source /etc/csh.cshrc | ||
| + | # | ||
| + | # Set environment variables | ||
| + | if ( "${?HOMEDIR}" == 0 ) then | ||
| + | setenv HOMEDIR /home/iceman | ||
| + | endif | ||
| + | if ( "${?TMPDIR}" == 0 ) then | ||
| + | setenv TMPDIR $HOMEDIR/tmp | ||
| + | endif | ||
| + | if ( "${?USERPATH}" == 0 ) then | ||
| + | setenv USERPATH /bin:/sbin:/usr/bin:/usr/sbin:${HOMEDIR}/bin | ||
| + | setenv PATH ${PATH}:${USERPATH} | ||
| + | endif | ||
| + | if ( "${?ICEPKG}" == 0 ) then | ||
| + | if ( -e /opt/ice/pkg ) then | ||
| + | setenv ICEPKG /opt/ice/pkg | ||
| + | setenv ICEROOT $ICEPKG/icexxx | ||
| + | setenv NMROOT $ICEPKG/nmxxx | ||
| + | setenv NM_USER_JVM_FLAGS "-Xmx1024m -Xms1024m" | ||
| + | setenv NMHISTORY_DIR $TMPDIR | ||
| + | setenv XMDISK $ICEPKG/xmxxx | ||
| + | setenv XMHISTORY_DIR $TMPDIR | ||
| + | setenv JAVAHOME $ICEPKG/jdk | ||
| + | if ( -e $JAVAHOME/bin ) then | ||
| + | setenv PATH ${PATH}:$JAVAHOME/bin | ||
| + | endif | ||
| + | if ( -e $JAVAHOME/jre/bin ) then | ||
| + | setenv PATH ${PATH}:$JAVAHOME/jre/bin | ||
| + | endif | ||
| + | if ( -e /opt/ice/bin ) then | ||
| + | setenv PATH ${PATH}:/opt/ice/bin | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | # | ||
| + | # Set C-Shell/TCSH environment | ||
| + | if ( "${?LINES}" == 0 ) then | ||
| + | setenv LINES | ||
| + | endif | ||
| + | if ( "${?COLUMNS}" == 0 ) then | ||
| + | setenv COLUMNS | ||
| + | endif | ||
| + | |||
| + | # Aliases | ||
| + | alias ice ${ICEROOT}/jre/ice | ||
| + | alias xms source ${XMDISK}/xm/unix/xmstart | ||
| + | alias xmstart source ${XMDISK}/xm/unix/xmstart | ||
| + | alias nms source ${NMROOT}/os/unix/nmstart | ||
| + | alias nmstart source ${NMROOT}/os/unix/nmstart | ||
Create the follow NeXtMidas macro ~/nmstartup.mm | Create the follow NeXtMidas macro ~/nmstartup.mm | ||
| Line 139: | Line 192: | ||
./icepic start | ./icepic start | ||
| + | Note: If you are upgrading the driver from a previous version, stop and remove the old driver: | ||
| + | ./icepic stop | ||
| + | ./icepic remove | ||
Configure the kernel line parameters in /etc/default/grub (This example uses kernel allocated memory): | Configure the kernel line parameters in /etc/default/grub (This example uses kernel allocated memory): | ||
Revision as of 10:47, 30 April 2020
As root,
Install prerequisite packages:
- gcc
- gcc-c++
- libstdc++-devel
- kernel-headers
- kernel-devel
Create ICE operating user 'iceman':
useradd iceman passwd iceman <enter password>
If not already installed, install TC-Shell:
yum install tcsh
Change iceman's shell to TC-Shell:
usermod -s /bin/tcsh iceman
Create the following directory structure:
/ |-- ... |-- mnt | |-- data01 | |-- data11 | |-- icedisk | `-- ramdisk |-- opt | `-- ice | | |-- aux | | | |-- data01 -> /mnt/data01 | | | |-- data11 -> /mnt/data11 | | | |-- icedisk -> /mnt/icedisk | | | `-- ramdisk -> /mnt/ramdisk | | |-- pkg |-- ...
Note that /opt/ice/aux only contains links. This is a matter of convenience so that all of the AUXes can be referenced from within the ICE tree. They can be create as such:
cd /opt/ice/aux ln -s /mnt/data01 data01 ln -s /mnt/data11 data11 ln -s /mnt/icedisk icedisk ln -s /mnt/ramdisk ramdisk
The entire /opt/ice directory should be owned by iceman, as well as /mnt/icedisk:
chown -R iceman:iceman /opt/ice /mnt/icedisk
Download the latest stable ICE tree and NeXtMidas release from http://www.ice-online.com/software/downloads/stable/
Copy the ICE tree software ZIP archive, the NeXtMidas ZIP archive, and the JDK archive into /opt/ice/pkg and make sure they are owned by iceman:
cp <source path>/iceXXX.zip /opt/ice/pkg cp <source path>/nxmXXX.zip /opt/ice/pkg cp <source path>jdkXXX.tar.gz /opt/ice/pkg chown iceman:iceman /opt/ice/pkg/*
Now as iceman dearchive the software packages and make symbolic links, which makes the paths more manageable and later software upgrades considerably easier:
cd /opt/ice/pkg unzip iceXXX.zip ln -s iceXXX icexxx unzip nxmXXX.zip ln -s nxmXXX nmxxx tar -xzf jdkXXX.tar.gz ln -s jdkXXX jdk
Modify /opt/ice/pkg/nmxxx/nxm/sys/cfg/nmstartup.mm to include the following (use this as a complete example):
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Macro to initialize system specific settings. ! @author Jeff Schoen ! @version $Id: nmstartup.mm,v 1.37 2011/11/10 20:58:41 ntn Exp $ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! startmacro info "DEPRECATION warnings ON, to turn off edit nmstartup.mm in SYS->CFG" debug on DEPRECATE ! portable way to define normal auxes (1 = /opt/ice/aux/data01/+/, etc.) file name u:aux.1 (opt,ice,aux,data01,+) file name u:aux.2 (opt,ice,aux,ramdisk) file name u:aux.11 (opt,ice,aux,data11,+) file name u:aux.12 (opt,ice,aux,data12,+) ! define OS specific AUXes if env.ostype eqs "UNIX" sedit AUX.9 AUX.9 append ",RAM,AUTO" ! sedit AUX.9 AUX.9 append ",RAM,<start>M,<sized>M" elseif env.ostype eqs "DOS" sedit AUX.9 AUX.9 append ",RAM,<start>M,<sized>M" elseif env.ostype eqs "VMS" ! nothing specific for VMS endif ! set write AUX and read AUX list aux 1 1 cwd dat ram path set dsp hwc env set "HWFILE" "nxm.sys.dat.hwconfig" res t:km "nxm.sys.cfg.keyMap.tbl" env set KEYMAP ^km endmacro
Add the following lines to ~iceman/.cshrc, creating the file if it does not already exist (this is a bare minimum TCSH login script for our purposes):
setenv ICEPKG /opt/ice/pkg setenv ICEROOT $ICEPKG/icexxx setenv NMROOT $ICEPKG/nmxxx setenv JAVAHOME $ICEPKG/
#!/bin/csh
#
# Red-Hat System csh.cshrc
if ( -f /etc/csh.cshrc ) source /etc/csh.cshrc
#
# Set environment variables
if ( "${?HOMEDIR}" == 0 ) then
setenv HOMEDIR /home/iceman
endif
if ( "${?TMPDIR}" == 0 ) then
setenv TMPDIR $HOMEDIR/tmp
endif
if ( "${?USERPATH}" == 0 ) then
setenv USERPATH /bin:/sbin:/usr/bin:/usr/sbin:${HOMEDIR}/bin
setenv PATH ${PATH}:${USERPATH}
endif
if ( "${?ICEPKG}" == 0 ) then
if ( -e /opt/ice/pkg ) then
setenv ICEPKG /opt/ice/pkg
setenv ICEROOT $ICEPKG/icexxx
setenv NMROOT $ICEPKG/nmxxx
setenv NM_USER_JVM_FLAGS "-Xmx1024m -Xms1024m"
setenv NMHISTORY_DIR $TMPDIR
setenv XMDISK $ICEPKG/xmxxx
setenv XMHISTORY_DIR $TMPDIR
setenv JAVAHOME $ICEPKG/jdk
if ( -e $JAVAHOME/bin ) then
setenv PATH ${PATH}:$JAVAHOME/bin
endif
if ( -e $JAVAHOME/jre/bin ) then
setenv PATH ${PATH}:$JAVAHOME/jre/bin
endif
if ( -e /opt/ice/bin ) then
setenv PATH ${PATH}:/opt/ice/bin
endif
endif
endif
#
# Set C-Shell/TCSH environment
if ( "${?LINES}" == 0 ) then
setenv LINES
endif
if ( "${?COLUMNS}" == 0 ) then
setenv COLUMNS
endif
# Aliases
alias ice ${ICEROOT}/jre/ice
alias xms source ${XMDISK}/xm/unix/xmstart
alias xmstart source ${XMDISK}/xm/unix/xmstart
alias nms source ${NMROOT}/os/unix/nmstart
alias nmstart source ${NMROOT}/os/unix/nmstart
Create the follow NeXtMidas macro ~/nmstartup.mm
startmacro option ice /opt/ice/pkg/icexxx if "/proc/driver/icepic" fexists then pic aux 9 endif hw file nxm.ice.dat.hwconfig aux 1 1|2|9|DAT|11|CWD|RAM|HOME endmacro
Compile NeXtMidas and the ICE tree:
nms nm make all nm make all ice nmend
As root, build the ICE-PIC driver:
cd /opt/ice/pkg/icexxx/drv/lnx ./icepic make ./icepic install ./icepic start
Note: If you are upgrading the driver from a previous version, stop and remove the old driver:
./icepic stop ./icepic remove
Configure the kernel line parameters in /etc/default/grub (This example uses kernel allocated memory):
... GRUB_CMDLINE_LINUX="... ice.ra=2 ice.rd=8000M ice.rm=64M"
Remake grub.cfg:
On Legacy/BIOS systems:
grub2-mkconfig -o /boot/grub2/grub.cfg
On UEFI systems:
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
Reboot the machine.
Once rebooted, log into a graphical session as iceman.
Check the that the driver loaded and verify that the requested memory buffer size was obtained:
cat /proc/driver/icepic
You should see
RamStart : XXXX Mby RamDisk : 8000 Mby RamMapped : 64 Mby ...
Try starting NeXtMidas and test the configuration:
nms nm nM> plot apenny
Now from within the NeXtMidas shell, detect any ICE-PIC cards that might be installed:
nM> pic detect
Note the PCI-e width and generation.