loading RBlas.dll

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

loading RBlas.dll

sachin1234-2
hi everyone,

Im implementing a new RBlas dll but just for optimising sake i need to know how and WHERE (which source code) RBlas gets loaded. there is a call to loadlibrary() in dynload.c BUT it seems this is not the function that is loading Rblas.

how do i know this? well i added the code :(just after the loadlibrary() call)
        /*********************************************/
        /*this section writes into files which libraries were loaded*/
        file=fopen("libraries.txt","a");
        fputs(path,file);
        fputs("\n",file);
        fclose(file);
        /******************************************/
so that it prints out the path names of which ever libraries are loaded and the output is:
C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/methods/libs/methods.dll
C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/grDevices/libs/grDevices.dll
C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/stats/libs/stats.dll

and i think i got tools.dll to load as well. I cant find where R.dll, Rblas.dll etc gets loaded. My main focus is Rblas.dll

now heres what i expect. Whenever you open R it runs one of its script files which contains dyn.load and loads it. HOWEVER as far as i understand dyn.load must be using dynload.c. Hence it should spit loading blas into libraries.txt which it doesnt do.

I am stumped. I've spend nearly 2 days on this. any help would be appreciated

Reply | Threaded
Open this post in threaded view
|

Re: loading RBlas.dll

Antonio, Fabio Di Narzo
hi, whoever you are (I've seen no signature),

2009/1/22 sachin1234 <[hidden email]>:
>
> hi everyone,
>
> Im implementing a new RBlas dll but just for optimising sake i need to know
> how and WHERE (which source code) RBlas gets loaded. there is a call to
> loadlibrary() in dynload.c BUT it seems this is not the function that is
> loading Rblas.

Why do you need this? The R-admin manual explains how to replace the R
built-in version of Blas with a custom, optimized one. Is this what
are you looking for? One of the methods mentioned here doesn't even
require re-compilation of R.

Bests,
f.

>
> how do i know this? well i added the code :(just after the loadlibrary()
> call)
>        /*********************************************/
>        /*this section writes into files which libraries were loaded*/
>        file=fopen("libraries.txt","a");
>        fputs(path,file);
>        fputs("\n",file);
>        fclose(file);
>        /******************************************/
> so that it prints out the path names of which ever libraries are loaded and
> the output is:
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/methods/libs/methods.dll
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/grDevices/libs/grDevices.dll
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/stats/libs/stats.dll
>
> and i think i got tools.dll to load as well. I cant find where R.dll,
> Rblas.dll etc gets loaded. My main focus is Rblas.dll
>
> now heres what i expect. Whenever you open R it runs one of its script files
> which contains dyn.load and loads it. HOWEVER as far as i understand
> dyn.load must be using dynload.c. Hence it should spit loading blas into
> libraries.txt which it doesnt do.
>
> I am stumped. I've spend nearly 2 days on this. any help would be
> appreciated
>
>
> --
> View this message in context: http://www.nabble.com/loading-RBlas.dll-tp21617712p21617712.html
> Sent from the R devel mailing list archive at Nabble.com.
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>



--
Antonio, Fabio Di Narzo
Ph.D. student at
Department of Statistical Sciences
University of Bologna, Italy

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Reply | Threaded
Open this post in threaded view
|

Re: loading RBlas.dll

sachin1234-2
hi Antonio,

The name's Sachin :) . I need this because im not implementing the ATLAS, fast BLAS or anything like that. What im trying to do is to make a GPU version of blas. I have implemented this so far but extremely inefficiently. What i need to do is to do things like initialisation of the GPU hardware as soon as Rblas.dll gets loaded.

Whats happening so far is something like this:

GPU_DGEMM (arguments)}/*this is a blas function*/
    initialise_GPU;
    /*rest of code*/
    return;
}

sorry for not being clear
sachin

Antonio, Fabio Di Narzo wrote
hi, whoever you are (I've seen no signature),

2009/1/22 sachin1234 <Sachinthaka.Abeywardana@csiro.au>:
>
> hi everyone,
>
> Im implementing a new RBlas dll but just for optimising sake i need to know
> how and WHERE (which source code) RBlas gets loaded. there is a call to
> loadlibrary() in dynload.c BUT it seems this is not the function that is
> loading Rblas.

Why do you need this? The R-admin manual explains how to replace the R
built-in version of Blas with a custom, optimized one. Is this what
are you looking for? One of the methods mentioned here doesn't even
require re-compilation of R.

Bests,
f.

>
> how do i know this? well i added the code :(just after the loadlibrary()
> call)
>        /*********************************************/
>        /*this section writes into files which libraries were loaded*/
>        file=fopen("libraries.txt","a");
>        fputs(path,file);
>        fputs("\n",file);
>        fclose(file);
>        /******************************************/
> so that it prints out the path names of which ever libraries are loaded and
> the output is:
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/methods/libs/methods.dll
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/grDevices/libs/grDevices.dll
> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/stats/libs/stats.dll
>
> and i think i got tools.dll to load as well. I cant find where R.dll,
> Rblas.dll etc gets loaded. My main focus is Rblas.dll
>
> now heres what i expect. Whenever you open R it runs one of its script files
> which contains dyn.load and loads it. HOWEVER as far as i understand
> dyn.load must be using dynload.c. Hence it should spit loading blas into
> libraries.txt which it doesnt do.
>
> I am stumped. I've spend nearly 2 days on this. any help would be
> appreciated
>
>
> --
> View this message in context: http://www.nabble.com/loading-RBlas.dll-tp21617712p21617712.html
> Sent from the R devel mailing list archive at Nabble.com.
>
> ______________________________________________
> R-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>



--
Antonio, Fabio Di Narzo
Ph.D. student at
Department of Statistical Sciences
University of Bologna, Italy

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Reply | Threaded
Open this post in threaded view
|

Re: loading RBlas.dll

Prof Brian Ripley
So you don't need this: you just need to replace Rblas.dll.

DLLs can contain initialization code: that is standard Windows'
practice so please read up on it.

On Sat, 24 Jan 2009, sachin1234 wrote:

>
> hi Antonio,
>
> The name's Sachin :) . I need this because im not implementing the ATLAS,
> fast BLAS or anything like that. What im trying to do is to make a GPU
> version of blas. I have implemented this so far but extremely inefficiently.
> What i need to do is to do things like initialisation of the GPU hardware as
> soon as Rblas.dll gets loaded.
>
> Whats happening so far is something like this:
>
> GPU_DGEMM (arguments)}/*this is a blas function*/
>    initialise_GPU;
>    /*rest of code*/
>    return;
> }
>
> sorry for not being clear
> sachin
>
>
> Antonio, Fabio Di Narzo wrote:
>>
>> hi, whoever you are (I've seen no signature),
>>
>> 2009/1/22 sachin1234 <[hidden email]>:
>>>
>>> hi everyone,
>>>
>>> Im implementing a new RBlas dll but just for optimising sake i need to
>>> know
>>> how and WHERE (which source code) RBlas gets loaded. there is a call to
>>> loadlibrary() in dynload.c BUT it seems this is not the function that is
>>> loading Rblas.
>>
>> Why do you need this? The R-admin manual explains how to replace the R
>> built-in version of Blas with a custom, optimized one. Is this what
>> are you looking for? One of the methods mentioned here doesn't even
>> require re-compilation of R.
>>
>> Bests,
>> f.
>>
>>>
>>> how do i know this? well i added the code :(just after the loadlibrary()
>>> call)
>>>        /*********************************************/
>>>        /*this section writes into files which libraries were loaded*/
>>>        file=fopen("libraries.txt","a");
>>>        fputs(path,file);
>>>        fputs("\n",file);
>>>        fclose(file);
>>>        /******************************************/
>>> so that it prints out the path names of which ever libraries are loaded
>>> and
>>> the output is:
>>> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/methods/libs/methods.dll
>>> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/grDevices/libs/grDevices.dll
>>> C:/DOCUME~1/abe044/MYDOCU~1/PROJEC~1/GPU_BLAS/R-28~1.1/library/stats/libs/stats.dll
>>>
>>> and i think i got tools.dll to load as well. I cant find where R.dll,
>>> Rblas.dll etc gets loaded. My main focus is Rblas.dll
>>>
>>> now heres what i expect. Whenever you open R it runs one of its script
>>> files
>>> which contains dyn.load and loads it. HOWEVER as far as i understand
>>> dyn.load must be using dynload.c. Hence it should spit loading blas into
>>> libraries.txt which it doesnt do.
>>>
>>> I am stumped. I've spend nearly 2 days on this. any help would be
>>> appreciated
>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/loading-RBlas.dll-tp21617712p21617712.html
>>> Sent from the R devel mailing list archive at Nabble.com.
>>>
>>> ______________________________________________
>>> [hidden email] mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>
>>
>>
>> --
>> Antonio, Fabio Di Narzo
>> Ph.D. student at
>> Department of Statistical Sciences
>> University of Bologna, Italy
>>
>> ______________________________________________
>> [hidden email] mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>>
>
> --
> View this message in context: http://www.nabble.com/loading-RBlas.dll-tp21617712p21646457.html
> Sent from the R devel mailing list archive at Nabble.com.
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

--
Brian D. Ripley,                  [hidden email]
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel