SystemML is built using Apache Maven. SystemML will build on Linux, MacOS, or Windows, and requires Maven 3 and Java 7 (or higher). To build SystemML, run:
mvn clean package
To build the SystemML distributions (.tar.gz
, .zip
, etc.), run:
mvn clean package -P distribution
SystemML features a comprehensive set of integration tests. To perform these tests, run:
mvn verify
Note: these tests require R to be installed and available as part of the PATH variable on the machine on which you are running these tests.
If required, please install the following packages in R:
install.packages(c("batch", "bitops", "boot", "caTools", "data.table", "doMC", "doSNOW", "ggplot2", "glmnet", "lda", "Matrix", "matrixStats", "moments", "plotrix", "psych", "reshape", "topicmodels", "wordcloud"), dependencies=TRUE)
SystemML itself is written in Java and is managed using Maven. As a result, SystemML can readily be imported into a standard development environment such as Eclipse and IntelliJ IDEA. The DMLScript
class serves as the main entrypoint to SystemML. Executing DMLScript
with no arguments displays usage information. A script file can be specified using the -f
argument.
In Eclipse, a Debug Configuration can be created with DMLScript
as the Main class and any arguments specified as Program arguments. A PyDML script requires the addition of a -python
switch.
Suppose that we have a hello.dml
script containing the following:
print('hello ' + $1)
This SystemML script can be debugged in Eclipse using a Debug Configuration such as the following: