MatrixWarrior Powered by FMSlib Copyright © Multipath Corporation

Welcome to MatrixWarrior

A performance measuring and tuning tool for scientific computers.

This is the Quick Start Guide. For a detailed description of MatrixWarrior, refer to the MatrixWarrior section of the FMS Manual.

If you are already familiar with MatrixWarrior, click Start to begin.

What can MatrixWarrior do for you?

  • Measure the actual performance and tune your machine(s);
  • Evaluate machines and options prior to purchase;
  • Tune and burn-in your machines after purchase;
  • Validate new machine designs before production;
  • Check possible hardware issues in production using a known application; and
  • Learn about the FMS and Dashboard libraries, which can be incorporated into your application to provide performance benefits and useful displays of information.

Dashboard Dashboard Dashboard
MatrixWarrior is an application layered on FMSlib, the World's leading software library for solving large matrix algebra problems in production applications. FMSlib is highly optimized for each hardware configuration, keeping all components operating at maximum capacity throughout the entire computation. This provides an ideal test environment for measuring machine performance.

Dashboard is a performance display library that generates a WEB site during program execution. MatrixWarrior used Dashboard to display information on the hardware and its performance.

What problem does MatrixWarrior use for testing your machine?

Problem Types for [A]{X}={B}
Module Data Type Matrix Symmetry
1 Real Symmetric
2 Real Nonsymmetric
3 Complex Hermitian
4 Complex Symmetric
5 Complex Nonsymmetric
MatrixWarrior uses FMSlib to solve the linear system of equations [A]{X}={B}, where [A] is an NxN coefficient matrix, {B} is 1 or more known vectors and {X} are the solution vectors to be computed. MatrixWarrior can solve problems with the data types and matrix symmetry listed in the table.

The solution proceeds in two steps:

  1. Matrix Factoring, which involves only the matrix data in [A]
  2. Vector Solution, which uses the matrix factors computed in (1) and the known vectors {B} to solve for the vectors {X}
  3. .
During the test, you may specify the size of the matrix, data type, symmetry and number of vectors. Default values are provided, based on the machine being tested.

How can I solve a really large problem?

For large problems, FMSlib can store the data on disk. You control where the data is stored by creating a directory on your file system and setting the FMSDISK environment variable to that directory name. MatrixWarrior will create the directory and set FMSDISK for you if none is specified. For more advanced use of disks, FMSlib contains a complete file striping system which is described here.

NOTE: On a slow machine with a large disk, the default problem size can take a long time.

How can I control what reports are generated and displayed?

Dashboard is a software display package that monitors the performance of hardware and software. It creates and updates a website with separate pages for hardware, software and application performance. Hardware pages include information about the CPUs, GPUs, Memory and Disks. Software pages include information on the file system, installed software, a subroutine call-tree and usage statistics. A Performance page summarizes the progress of the application and the performance of key hardware components. These pages can be viewed with any standard WEB browser, including a PC, tablet or phone.

MatrixWarrior uses Dashboard to display information about the hardware it is using and its performance. When you start running MatrixWarrior, you will be asked if you want to open a WEB browser to view the results. When you answer yes, a second window pops up. This is your WEB browser. It begins by displaying this Help page.

Controlling Report Generation
Parameter Default Description
IWATCH 99 Which reports are generated
A value of 115 will generate a movie.
NSUPD 5 sec. How frequently Dashboard updates the pages
NSREF 3 sec. How frequently the browser reloads the pages

You can control what reports Dashboard generates and how they are displayed with the Parameters listed in the table. IWATCH determines what reports get generated, NSUPD determines how often the WEB pages are updated and NSREF determines how often the WEB browser looks for updates.

The Performance page summarizes the results of the test, displaying a variety of information on the hardware performance. As new data becomes available, this page is updated. As an alternative, you can save the intermediate pages to create a movie of the performance history by setting IWATCH=115.


How can I select what hardware is used?

Adjusting Hardware
Parameter Default Description
MAXCPU All Number of CPU cores
MAXGPU All Number of GPUs
MEMPCT 50 Percent of memory
At startup, Dashboard determines the installed hardware and displays the information on the CPUs, GPU1, GPU2, Memory and Disks pages. You may use less than the installed hardware by specifying Parameters. These scalar values can be specified in either of two places:

  • at the FMSSET> prompt during problem input, or
  • in file mwlic.txt between the FMSSET and RETURN lines
The most popular hardware Parameters to change are listed in the table. A complete list of all Parameters can be found in the Parameter section of the FMS manual..

Let's start

Ready to run MatrixWarrior ? If this is your first time, try using the default values suggested in the [default value] brackets.

Click Start to begin.

Please Email any questions, comments or suggestions to