[Bioc-devel] BiocParallel::bpvec() and DNAStringSet objects, problem

Robert Castelo robert.castelo at upf.edu
Thu Oct 1 14:47:44 CEST 2015


hi Valerie,

regarding the bug you fixed about a month ago and described below, 
there's something still not entirely correct that i did not notice then, 
or maybe something has broken since then. Let me run the example again 
to explain it:

library(Biostrings)
library(BiocParallel)

bpvec(X=DNAStringSet(c("AC", "GT")), FUN=as.character, 
BPPARAM=bpparam("SerialParam"))
[1] "AC" "GT"

## this looks fine so far but notice the result when i call
## now the function 'class()' instead of 'as.character()'

bpvec(X=DNAStringSet(c("AC", "GT")), FUN=class, 
BPPARAM=bpparam("SerialParam"))
[1] "DNAString" "DNAString"

somehow bpvec() is chopping the input into objects of a class different 
to the original input class. this does not happen with the multicore 
backend:

bpvec(X=DNAStringSet(c("AC", "GT")), FUN=class, 
BPPARAM=bpparam("MulticoreParam"))
[1] "DNAStringSet" "DNAStringSet"


so, i guess there's still something wrong with the SerialParam backend.


thanks!!

robert.


On 09/05/2015 12:10 AM, Obenchain, Valerie wrote:
> Hi Robert,
>
> Thanks for reporting the bug. The problem was with how 'X' was split
> before dispatching to bplapply() and affected both SerialParam and
> SnowParam. Now fixed in release (1.2.21) and devel (1.3.52).
>
> Valerie
>
>
>>
>> ----- Forwarded Message -----
>> From: "Robert Castelo"<robert.castelo at upf.edu>
>> To: bioc-devel at r-project.org
>> Sent: Wednesday, September 2, 2015 8:12:33 AM
>> Subject: [Bioc-devel] BiocParallel::bpvec() and DNAStringSet objects, problem
>>
>> hi,
>>
>> I have encountered a problem when using the bpvec() function from the
>> BiocParallel package with DNAStringSet objects and the "SerialParam"
>> backend:
>>
>> library(Biostrings)
>> library(BiocParallel)
>>
>>
>> ## all correct when using the multicore backend
>>
>> bpvec(X=DNAStringSet(c("AC", "GT")), FUN=as.character, BPPARAM=bpparam())
>> [1] "AC" "GT"
>>
>> bpvec(X=DNAStringSet(c("AC", "GT")), FUN=as.character,
>> BPPARAM=MulticoreParam())
>> [1] "AC" "GT"
>>
>>
>> ## problem when using the SerialParam backend
>>
>> bpvec(X=DNAStringSet(c("AC", "GT")), FUN=as.character,
>> BPPARAM=bpparam("SerialParam"))
>> [1] "1" "2"
>>
>>
>> the problem is that elements of the DNAStringSet object get somehow
>> coerced to integers when using the "SerialParam" backend.
>>
>>
>> this occurs in both current release and devel, please find the
>> corresponding sessionInfo()'s below.
>>
>>
>> thanks!
>>
>> robert.
>>
>> ## release
>> sessionInfo()
>> R version 3.2.0 (2015-04-16)
>> Platform: x86_64-unknown-linux-gnu (64-bit)
>> Running under: Fedora release 12 (Constantine)
>>
>> locale:
>>    [1] LC_CTYPE=en_US.UTF8       LC_NUMERIC=C
>>    [3] LC_TIME=en_US.UTF8        LC_COLLATE=en_US.UTF8
>>    [5] LC_MONETARY=en_US.UTF8    LC_MESSAGES=en_US.UTF8
>>    [7] LC_PAPER=en_US.UTF8       LC_NAME=C
>>    [9] LC_ADDRESS=C              LC_TELEPHONE=C
>> [11] LC_MEASUREMENT=en_US.UTF8 LC_IDENTIFICATION=C
>>
>> attached base packages:
>> [1] stats4    parallel  stats     graphics  grDevices utils     datasets
>> [8] methods   base
>>
>> other attached packages:
>> [1] BiocParallel_1.2.20 Biostrings_2.36.4   XVector_0.8.0
>> [4] IRanges_2.2.7       S4Vectors_0.6.5     BiocGenerics_0.14.0
>> [7] vimcom_1.2-3        setwidth_1.0-4      colorout_1.1-0
>>
>> loaded via a namespace (and not attached):
>> [1] zlibbioc_1.14.0      futile.logger_1.4.1  tools_3.2.0
>> [4] lambda.r_1.1.7       futile.options_1.0.0
>>
>> ## devel
>> sessionInfo()
>> R Under development (unstable) (2015-04-28 r68268)
>> Platform: x86_64-unknown-linux-gnu (64-bit)
>> Running under: Fedora release 12 (Constantine)
>>
>> locale:
>>    [1] LC_CTYPE=en_US.UTF8       LC_NUMERIC=C
>> LC_TIME=en_US.UTF8
>>    [4] LC_COLLATE=en_US.UTF8     LC_MONETARY=en_US.UTF8
>> LC_MESSAGES=en_US.UTF8
>>    [7] LC_PAPER=en_US.UTF8       LC_NAME=C                 LC_ADDRESS=C
>>
>> [10] LC_TELEPHONE=C            LC_MEASUREMENT=en_US.UTF8
>> LC_IDENTIFICATION=C
>>
>> attached base packages:
>> [1] stats4    parallel  stats     graphics  grDevices utils     datasets
>>    methods   base
>>
>> other attached packages:
>> [1] BiocParallel_1.3.51 Biostrings_2.37.8   XVector_0.9.3
>> IRanges_2.3.18
>> [5] S4Vectors_0.7.14    BiocGenerics_0.15.6 vimcom_1.0-0
>> setwidth_1.0-4
>> [9] colorout_1.0-3
>>
>> loaded via a namespace (and not attached):
>> [1] zlibbioc_1.15.0      futile.logger_1.4.1  tools_3.3.0
>> lambda.r_1.1.7
>> [5] futile.options_1.0.0
>>
>> _______________________________________________
>> Bioc-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>>
>
>
>
> This email message may contain legally privileged and/or confidential information.  If you are not the intended recipient(s), or the employee or agent responsible for the delivery of this message to the intended recipient(s), you are hereby notified that any disclosure, copying, distribution, or use of this email message is prohibited.  If you have received this message in error, please notify the sender immediately by e-mail and delete this email message from your computer. Thank you.
>

-- 
Robert Castelo, PhD
Associate Professor
Dept. of Experimental and Health Sciences
Universitat Pompeu Fabra (UPF)
Barcelona Biomedical Research Park (PRBB)
Dr Aiguader 88
E-08003 Barcelona, Spain
telf: +34.933.160.514
fax: +34.933.160.550



More information about the Bioc-devel mailing list