[R] How to add make option to package compilation?

Martin Morgan martin.morgan at roswellpark.org
Fri Sep 15 15:13:41 CEST 2017


On 09/15/2017 08:57 AM, Michael Dewey wrote:
> In line
> 
> On 15/09/2017 13:30, Martin Møller Skarbiniks Pedersen wrote:
>> On 15 September 2017 at 14:13, Duncan Murdoch <murdoch.duncan at gmail.com>
>> wrote:
>>
>>> On 15/09/2017 8:11 AM, Martin Møller Skarbiniks Pedersen wrote:
>>>
>>>> Hi,
>>>>
>>>>     I am installing a lot of packages to a new R installation and it 
>>>> takes
>>>> a
>>>> long time.
>>>>     However the machine got 4 cpus and most of the packages are 
>>>> written in
>>>> C/C++.
>>>>
>>>>     So is it possible to add a -j4 flag to the make command when I 
>>>> use the
>>>> install.packages() function?
>>>>     That will probably speed up the package installation process 390%.
>>>>
>>>
>>> See the Ncpus argument in ?install.packages.
>>
>>
>> Thanks.
>>
>> However it looks like Ncpus=4 tries to compile four R packages at the 
>> same
>> time using one cpu for each packages.

The variable MAKE is defined in ${R_HOME}/etc/Renviron, and can be 
over-written with ~/.Renviron

     MAKE=make -j

There is further discussion in

 
https://cran.r-project.org/doc/manuals/r-release/R-admin.html#Configuration-variables

and ?Renviron.

One could configure a source installation to always compile with make 
-j, something like ./configure MAKE="make -j"

Martin

>>
> 
> But you said you had lots to install so would that not speed things up too?
> 
>>  From the documentation:
>> "
>>     Ncpus: the number of parallel processes to use for a parallel
>>            install of more than one source package.  Values greater than
>>            one are supported if the ‘make’ command specified by
>>            ‘Sys.getenv("MAKE", "make")’ accepts argument ‘-k -j Ncpus’
>> "
>>
>>     [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide 
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>> ---
>> This email has been checked for viruses by AVG.
>> http://www.avg.com
>>
> 


This email message may contain legally privileged and/or...{{dropped:2}}



More information about the R-help mailing list