- Open Source tools
- IBM Tools
Open Source tools
The Integrated Rule-Oriented Data System (iRODS) is open source data management software used by research organizations and government agencies worldwide. iRODS is released as a production-level distribution aimed at deployment in mission critical environments. It virtualizes data storage resources, so users can take control of their data, regardless of where and on what device the data is stored. As data volumes grow and data services become more complex, iRODS is increasingly important in data management. The development infrastructure supports exhaustive testing on supported platforms; plug-in support for microservices, storage resources, drivers, and databases; and extensive documentation, training and support services.
There are some POWER8 special optimized binaries for MariaDB available at MariaDB site. For more information, check their instructions website
When comparing SciMARK benchmark, Luajit performs almost 150% better than lua version 5.2.
Torch7 can be installed by following the instructions here.
Mongodb, Nodejs, V8, Hadoop, Cassandra and general software
There is a page at IBM that describes all these major open source software and if they are supported on IBM POWER processor running Linux.
HHVM (HipHop Virtual Machine) is a JIT compiler and virtual machine for PHP and Hack. HHVM was ported to ppc64el and already accepted by maintainers. You can download the source at GitHub HHVM Facebook or GitHub HHVM PPC64. You can also download binaries packages on PPA Page. HHVM have a official documentation but if you want to build it from source or need help to install it on POWER machines i recommend you to check our Wiki. The wiki, also, have some nice tutorials about how to test and use HHVM.
SaltStack is a new approach to infrastructure management. Easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds.
Salt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more.
SaltStack is available in Ubuntu, but could be installed from github also.
# apt-get install salt-minion # On the minion nodes # apt-get intsall salt-master # On the master node
In order to do it, do the following on all machines you want to have controlled by saltstack as in the master node:
# sudo apt-get install python-m2crypto python-yaml python-m2crypto python-zmq python-msgpack python-jinja2 python-dev python-pip git # pip install pycrypto # git clone https://github.com/saltstack/salt.git # cd salt # sudo python setup.py install
Once you have saltstack installed on all machines, you need to start the daemons.
For the minions, you need to specify which is the master node. The easier way to do it is configuring the hostname 'salt' point to the node IP, as for example:
# echo '10.1.1.4 salt' >> /etc/hosts
Then, you are able to start running the daemons. On the master node, you should run # salt-master or use the salt.master.service systemctl service. For minions, you should call # salt-minion, or, again, the proper salt.minion.service service.
Start the server with the following command:
Or, preferably using the daemon services, as the following line for systemd:
systemctl enable salt-master.service
For every minion you have, start the salt daemon with:
Or, preferably using the daemon services, as the following line for systemd:
systemctl enable salt-minion.service
Accept the minions keys in the master
When the minion connects to the master node, it provides a key that needs to be accepted by the master. In order to see the keys that are pending approval, go to the master node and use the command # salt-key -L, and to approve then, use the # salt-key -A.
After approval, you are going to see something like this, where ubuntu1404 and ubuntu140402 are my current minions.
sudo salt-key -L Accepted Keys: ubuntu1404 ubuntu140402 Denied Keys: Unaccepted Keys: Rejected Keys:
This example shows that my both minions have the keys accepted.
After that, you can check to see if the connection is fine with your minion, using the following command:
# salt '*' test.ping ubuntu1404: True ubuntu140402: True
In this case, means that both minions are reachable and you go proceed and start using salt.
One of the example, is capturing the MAC address for the eth0 interface on all minions:
sudo salt '*' network.hw_addr eth0 ubuntu1404: 4c:45:42:45:01:01 ubuntu140402: 4c:45:42:45:01:09
Or, restarting all the minions at once:
sudo salt '*' system.reboot ubuntu140402: ubuntu1404:
There are a set of IBM tools to install on Ubuntu when using Ubuntu over a PowerVM LPAR.
These tools could be found at IBM Fix Central Page.
Some of these packages are also available from this PPA.
The Advance Toolchain is a set of development tools, i.e. compiler, libraries, debugger and profiling tools, that help developers take leading edge advantage of IBM's latest POWER hardware features.
The following steps will guide you on the installation process of the Advance Toolchain. Detailed information is available in the Advance Toolchain documentation.
Firstly, import the Advance Toolchain GPG key by running:
wget ftp://ftp.unicamp.br/pub/linuxpatch/toolchain/at/ubuntu/dists/precise/6976a827.gpg.key sudo apt-key add 6976a827.gpg.key
Note: In the following steps, replace atX.X by the desired version, e.g. at8.0.
Native installation (on POWER)
Add the following line to /etc/apt/sources.list:
deb ftp://ftp.unicamp.br/pub/linuxpatch/toolchain/at/ubuntu trusty atX.X
Then, install the packages by running:
sudo aptitude install advance-toolchain-atX.X-runtime \ advance-toolchain-atX.X-devel \ advance-toolchain-atX.X-perf \ advance-toolchain-atX.X-mcore-libs
Cross compiler installation (on Intel)
The Advance Toolchain supports cross compilation from Intel processors and generating binaries for POWER processors.
Add the following line to /etc/apt/sources.list in your Intel-compatible computer:
deb [arch=i386] ftp://ftp.unicamp.br/pub/linuxpatch/toolchain/at/ubuntu trusty atX.X
Then, install the packages by running:
sudo aptitude install advance-toolchain-atX.X-cross-ppc64 advance-toolchain-atX.X-cross-ppc64le
For more information on how to use the Advance Toolchain cross compiler visit this page.
IBM SDK for PowerLinux
The IBM Software Development Kit for Linux on Power (SDK) is a free, Eclipse-based Integrated Development Environment (IDE). The SDK integrates C/C++ source development with the Advance Toolchain, Post-Link Optimization, and classic Linux performance analysis tools, including Oprofile, Perf and Valgrind. It is available as two different packages, providing you with three different development modes:
The IBM SDK for PowerLinux server development package allows you to use the IBM SDK for PowerLinux, which integrates the Eclipse integrated development environment (IDE), directly on the Power Systems server.
With the IBM SDK for PowerLinux client for remote development package, you can start the IBM SDK for PowerLinux x86_64 client, including the Eclipse IDE, on a workstation. You can then connect to a remote Power Systems server that has the IBM SDK for PowerLinux server agent installed to build, execute, debug, and analyze programs.
With the client for remote development package and cross-compiler feature, you can develop and build your application locally using the IBM Advance Toolchain for PowerLinux cross compiler.
Tested IBM JDK releases could be found at: http://www.ibm.com/developerworks/java/jdk/linux/tested.html
IBM Java 8 Download packages should be found at: http://www.ibm.com/developerworks/java/jdk/java8/
For Other IBM Java versions, please check: http://www.ibm.com/developerworks/java/jdk/linux/download.html
Adding IBM Java Apt Repository (For Utopic)
IBM Java is currently located into the Canonical partner archive for Utopic and can be installed through the apt tool.
The partner repository is usually already into the file /etc/apt/sources.list, although disabled (commented). In order to enable it, one should uncomment or, in case it is not in the repositories list, add it to /etc/apt/sources.list.
Then retrieve the updated package lists:
1 sudo apt-get update
Finally install it, via apt-get install. For the jdk:
1 sudo apt-get install ibm-java71-jdk
1 sudo apt-get install ibm-java71-jre
IBM C/C++ and Fortran Compiler
A key strength of the XL C/C++ for Linux (on little endian distributions) and XL Fortran for Linux (on little endian distributions) compiler products is their ability to generate highly optimized code for execution on OpenPower and IBM Power Systems™. The performance gain from decades of IBM compiler optimization experience on the XL compiler family which include XL C/C++ for Linux and XL Fortran for Linux is apparent in the release-to-release compiler improvements up to and including the current IBM POWER9® processor. XL C/C++ for Linux (on little endian distributions) now offers an alternative no-charge community edition for developer and partner use. IBM makes a Ubuntu repository available for XL compilers at: http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ - visit here to get the installation commands.
Adding IBM XL Apt Repository
IBM also makes a Ubuntu repository available for IBM XL at http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/.
You can install the repository, running the following commands:
wget -q http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/public.gpg -O- | sudo apt-key add - echo "deb http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/ trusty main" | sudo tee /etc/apt/sources.list.d/ibm-xl-compiler-eval.list sudo apt-get update
IBM Engineering and Scientific Subroutine Library (ESSL)
ESSL is a collection of state-of-the-art mathematical subroutines specifically designed to improve the performance of engineering and scientific applications on the IBM POWER™ processor-based servers and blades. ESSL and Parallel ESSL are commonly used in the aerospace, automotive, electronics, petroleum, utilities and scientific research industries
CUDA 5.5 For IBM POWER8 is supported either in Ubuntu 14.04.
CUDA 7.5 is also available for POWER8 machines.
Ubuntu 16.04 and CUDA 8
In order to download CUDA 8 beta releases for 16.04, you can download it at CUDA Release Candidate Release page
DPDK is a set of libraries and drivers for fast packet processing. It was designed to run on any processors, knowing Intel x86 has been the first CPU to be supported. Ports for other CPUs like IBM Power 8 or EZchip TILE-Gx are under progress. It runs mostly in Linux userland. A FreeBSD port is available for a subset of DPDK features.
Mellanox OpenFabrics Enterprise Distribution for Linux (MLNX_OFED) Overview
Clustering using commodity servers and storage systems is seeing widespread deployments in large and growing markets such as high performance computing, data warehousing, online transaction processing, financial services and large scale web 2.0 deployments. To enable distributed computing transparently and with maximum efficiency, applications in these markets require the highest I/O bandwidth and lowest possible latency. These requirements are compounded with the need to support a large interoperable ecosystem of networking, virtualization, storage, and other applications and interfaces. The OFED from OpenFabrics Alliance (www.openfabrics.org) has been hardened through collaborative development and testing by major high performance I/O vendors. Mellanox OFED (MLNX_OFED) is a Mellanox tested and packaged version of OFED and supports two interconnect types using the same RDMA (remote DMA) and kernel bypass APIs called OFED verbs – InfiniBand and Ethernet. 10/20/40Gb/s InfiniBand and RoCE (based on the RDMA over Converged Ethernet standard) over 10/40GbE are supported with OFED by Mellanox to enable OEMs and System Integrators to meet the needs end users in the said markets.