Looking at the HTTP request response times, experiment-showMaterial.view is sometimes very slow on labkey.org (10+ seconds).
Here's an example URL that takes about 25 seconds to render:
Which is actually pretty fast given that looking up an exp.ProtocolApplication by RowId about 25,000 times to render the one request. The vast majority are coming through ExperimentServiceImpl.populateRun() so that we can render the related runs grid at the bottom of the page.
What's really fun is that we're fetching the ExpProtocolApplication object so that we can get its RowId. But we already had the RowId, which is how we look up the ExpProtocolApplication object. I think we're also visiting runs multiple times in ExperimentController.ShowMaterialAction.