Compiling Chapel 1.22 with OmniPath


I am trying to compile chapel-1.22.1 on an HPC cluster with OmniPath with gcc/5.4.0 + openmpi/2.1.1. Here are my variables:

export CHPL_COMM=ofi
export LIBFABRIC_DIR=/opt/software/libfabric-1.6.2
export CHPL_LAUNCHER=mpirun4ofi
export CHPL_TARGET_CPU=native

I am getting an error:

comm-ofi.c: In function ‘init_ofiFabricDomain’:
comm-ofi.c:912:34: error: ‘FI_ORDER_RMA_RAW’ undeclared (first use in this function)
hints->tx_attr->msg_order = ( FI_ORDER_RMA_RAW // for same-address RMA

This configuration used to work for me in chapel-1.19.

Thank you,


1 Like

Hello Alex –

We started using the FI_ORDER_RMA_* ordering bits recently. Those were not added to libfabric until v1.8. It looks like your libfabric is v1.6.2, based on the path in your LIBFABRIC_DIR. If you can update your libfabric to v1.8 or later that will fix the problem. Or, if you can wait just a little while, Chapel 1.23 is about to become available, and it has a bundled libfabric (v1.11!) that will work.


1 Like

Ok, thank you very much, Greg!