Blog Archives

Inaccurate results from microbenchmark

February 2, 2014
By
Inaccurate results from microbenchmark

The microbenchmark package is a popular way of comparing the time it takes to evaluate different R expressions — perhaps more popular than the alternative of just using system.time to see how long it takes to execute a loop that evaluates an expression many times. Unfortunately, when used in the usual way, microbenchmark can give inaccurate

Read more »

New version of pqR, now with task merging

January 1, 2014
By
New version of pqR, now with task merging

 I’ve now released pqR-2013-12-29, a new version of my speedier implementation of R.  There’s a new website, pqR-project.org, as well, and a new logo, seen here. The big improvement in this version is that vector operations are sped up using task merging. With task merging, several arithmetic operations on a vector may be merged into a

Read more »

Deferred evaluation in Renjin, Riposte, and pqR

July 24, 2013
By
Deferred evaluation in Renjin, Riposte, and pqR

The previously sleepy world of R implementation is waking up.  Shortly after I announced pqR, my “pretty quick” implementation of R, the Renjin implementation was announced at UserR! 2013.  Work also proceeds on Riposte, with release planned for a year from now. These three implementations differ greatly in some respects, but interestingly they all try

Read more »

Fixing R’s NAMED problems in pqR

July 2, 2013
By
Fixing R’s NAMED problems in pqR

In R, objects of most types are supposed to be treated as “values”, that do not change when other objects change. For instance, after doing the following: a <- c(1,2,3) b <- a a <- 0 b is supposed to have the value 2, not 0. Similarly, a vector passed as an argument to a

Read more »

How pqR makes programs faster by not doing things

June 30, 2013
By
How pqR makes programs faster by not doing things

One way my faster version of R, called pqR (see updated release of 2013-06-28), can speed up R programs is by not even doing some operations. This happens in statements like for (i in 1:1000000) ..., in subscripting expressions like v, and in logical expressions like any(v>0) or all(is.na(X)). This is done using pqR’s internal “variant result” mechanism, which is

Read more »

Comparing the speed of pqR with R-2.15.0 and R-3.0.1

June 24, 2013
By
Comparing the speed of pqR with R-2.15.0 and R-3.0.1

As part of developing pqR, I wrote a suite of speed tests for R. Some of these tests were used to show how pqR speeds up simple real programs in my post announcing pqR, and to show the speed-up obtained with helper threads in pqR on systems with multiple processor cores. However, most tests in

Read more »

Parallel computation with helper threads in pqR

June 23, 2013
By
Parallel computation with helper threads in pqR

One innovative feature of pqR (my new, faster, version of R), is that it can perform some numeric computations in “helper” threads, in parallel with other such numeric computations, and with interpretive operations performed in the “master” thread. This can potentially speed up your computations by a factor as large as the number of processor cores

Read more »

Announcing pqR: A faster version of R

June 22, 2013
By
Announcing pqR:  A faster version of R

pqR — a “pretty quick” version of R — is now available to be downloaded, built, and installed on Linux/Unix systems. This version of R is based on R-2.15.0, but with many performance improvements, as well as some bug fixes and new features. Notable improvements in pqR include: Multiple processor cores can automatically be used to perform some numerical

Read more »

GRIMS — General R Interface for Markov Sampling

June 25, 2011
By
GRIMS — General R Interface for Markov Sampling

I have released a (very) preliminary version of my new MCMC software in R, which I’m calling GRIMS, for General R Interface for Markov Sampling. You can get it here. This software differs from other more-or-less general MCMC packages in several respects, all but one of which make it, I think, a much better tool

Read more »

Two textbooks on probability using R

June 18, 2011
By
Two textbooks on probability using R

This fall, I’ll be teaching a second-year course on Probability with Computer Applications, which is required for Computer Science majors.  I’ve taught this before, but that was five years ago, so I’ve been looking to see what new textbooks would be suitable.  The course aims not just to use computer science applications as examples, but

Read more »