Please note the descriptions of System 2 and System 3 from README.md. Behavior of the package on Windows was evaluated using these systems, at different points during package development. The following is provided by David Roxe, who undertook some evaluation as a favor to the authors.
On Nov 2. 2020, I submitted a descriptive change here to indicate that the package was observed to work on System 2.
Recently, I evaluated the package on Windows 11 on System 3. I was made aware of another evaluation on Windows 10, in which it was observed that correlation analysis could not complete within a reasonable amount of time, even on a very amply-resourced machine. This observation was at odds with observed behavior on Linux on System 1. However, my observations on System 3 matched the report of performance difficulties on Windows 10, so I investigated a little further.
I specifically observed a performance problem on Windows in correlation analysis. I used the "profiling" feature of RStudio to analyze the "lung" portion of the correlation analysis (because this is much more tractable than the "all" portion). I found two places where substantial computing resources were spent (to the point of dominating all other computational expenditures):
For whatever reason, these functions are slow on Windows, yet perform adequately on Linux. I do not have an explanation for this.
I evaluated direct use of R-4.2.1 on Windows (without RStudio). Although it was marginally faster, the performance difficulties with correlation analysis remained quite evident.
I installed Ubuntu 22.04 using the "Windows Subsystem for Linux" (WSL), plus several Ubuntu packages necessary to support the various dependencies of this R package. I then (with some trouble) completed an installation of this R package in that WSL environment. Note, WSL forced the use of R-4.1.2 instead of R-4.2.1; this in turn forced use of BiocManager 3.1.4 instead of BiocManager-3.1.5. This in turn affected other package versions.
Using only the bash command line provided by WSL, I was able to execute the entire package in approximately 20m. This required some adjustments to Analysis.R.
Note that WSL executes a binary program exactly as it was compiled for Linux, rather than a binary compiled specifically for Windows.
So:
I would like to be able to report a stable and reproducible procedure for executing the package with WSL on Windows. Among other things, this would permit further investigation of the performance problem. However, I have encountered the following difficulties:
Furthermore, WSL is subject to a RAM limitation: It has access to at most 50% of system RAM. Some web search results suggest "50% or 8GB, whichever is smaller", but at any rate I note that on System 3, which has 128G of RAM, WSL reports that it has 64G of RAM available. To suggest WSL as a solution to the performance problem would be to suggest a minimum hardware requirement of 96G of RAM. From my own research, most consumer-grade laptops accommodate at most 64G, so this solution would restrict execution on Windows to desktop systems.
Despite all that, I did observe a successful (and reasonably quick) package execution on Windows. This is all to say:
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.