BDVAL relies on RUtils, which in turn depends on R and Rserve. BDVAL also requires the ROCR package. Consult the R documentation for instructions on how to install optional packages into R.


To install ROCR type the following via the R command line



To install Rserve type the following via the R command line


Note that if you do not specify the rforge url, you will likely get an older version of the Rserve package.

To start Rserve type the following via the R command line



BDVal is designed to execute tasks in parallel where possible through the use of the Parallel Java (PJ) library. By default the Parallel Java library will attempt to use the same number of threads as there are CPUs on the host. To specify the default number of threads on the Java command line like this:

 java -Dpj.nt=n ...

where “n” us the number of threads you wish to use.

The BDVal examples using ant generally specify the default values based on the operating system. When using the BDVal ant examples and templates, you can specify the number of threads by setting the ant property “num-threads” which will get passed onto the java command line. For example:

 ant -Dnum-threads=n -f prostate-example.xml

will set the number of threads to “n”.

Note that on windows operating systems 1 thread is recommended. Cases have been reported where data from the Rserve process gets mangled when using more than one thread at a time. This is not the case for Unix based systems.


BDVAL uses the Commons Logging api to display informational messages, however log4j is recommended. Consult the documentation of respective frameworks if you need to configure custom logging.

It may be helpful to enable assertions by adding “-ea” to the java command line.