COMPSs Matrix Multiplication, out-of-core, using files. Resource usage included in the metadata, for knowledge extraction
COMPSs 3.4.post2607

Workflow Type: COMP Superscalar
Stable

Name: Matrix multiplication with Files Contact Person: [email protected]
Access Level: public
License Agreement: Apache2
Platform: COMPSs

Description

Matrix multiplication is a binary operation that takes a pair of matrices and produces another matrix.

If A is an n×m matrix and B is an m×p matrix, the result AB of their multiplication is an n×p matrix defined only if the number of columns m in A is equal to the number of rows m in B. When multiplying A and B, the elements of the rows in A are multiplied with corresponding columns in B.

In this implementation, A and B are square matrices (same number of rows and columns), and so it is the result matrix C. Each matrix is divided in MSIZE blocks of BSIZE doubles. The multiplication of two blocks is done by a multiply task method with a simple three-nested-loop implementation. When executed with COMPSs, the main program generates N^3^ tasks arranged as N^2^ chains of N tasks in the dependency graph.

The metadata of this example includes detailed resource usage, which can be used from any knowledge extraction framework able to process WRROC RO-Crates.

Execution instructions

Direct usage:

runcompss --lang=python src/matmul_files.py  

where:

  • MSIZE: Dimension of the number of blocks that form the hypermatrix (i.e. MSIZE x MSIZE).
  • BSIZE: Dimension of the number of elements of each of the blocks (i.e. BSIZE x BSIZE).

Execution Examples

runcompss --lang=python src/matmul_files.py 20 300
runcompss src/matmul_files.py 13 900
python -m pycompss src/matmul_files.py 14 800

Alternatively, when running in a cluster, use launch_matmul.sh script (see instructions inside).

Build

No build is required

Version History

COMPSs 3.4.post2607 (earliest) Created 27th Jul 2026 at 14:11 by Raül Sirvent

  • Executed with COMPSs version 3.4.post2607 at Marenostrum V, using 2 nodes.
  • Metadata includes rich resource usage information that can be seen using "pycompss inspect".
  • Input datasets not included, since they are generated by the code.

Frozen COMPSs-3.4.post2607 0fe2e97
help Creators and Submitter
Citation
Giacomini, Nicolò, Pina, Débora, Badia, Rosa M, & Sirvent, Raül. (2026). COMPSs Matrix Multiplication, out-of-core, using files. Resource usage included in the metadata, for knowledge extraction. WorkflowHub. https://doi.org/10.48546/WORKFLOWHUB.WORKFLOW.2230.1
Activity

Views: 21   Downloads: 6

Created: 27th Jul 2026 at 14:11

Annotated Properties
Topic annotations
Scientific disciplines
Computer Science
help Attributions

None

Total size: 48.1 MB
Powered by
(v.1.18.1)
Copyright © 2008 - 2026 The University of Manchester and HITS gGmbH