Remove spawn_blocking from version map (#1966)

I previously add `spawn_blocking` to the version map construction as it
had become a bottleneck
(https://github.com/astral-sh/uv/pull/1163/files#diff-704ceeaedada99f90369eac535713ec82e19550bff166cd44745d7277ecae527R116).
With the zero copy deserialization, this has become so fast we don't
need to move it to the thread pool anymore. I've also checked
`DataWithCachePolicy` but it seems to still take a significant amount of
time. Span visualization:

Resolving jupyter warm:

![image](692b03da-61c5-4f96-b413-199c14aa47c4)

Resolving jupyter cold:

![image](a6893155-d327-40c9-a83a-7c537b7c99c4)

![image](213556a3-a331-42db-aaf5-bdef5e0205dd)

I've also updated the instrumentation a little.

We don't seem cpu bound for the cold cache (top) and refresh case
(bottom) from jupyter:

![image](cb976add-3d30-465a-a470-8490b7b6caea)

![image](d7ecb745-dd2d-4f91-939c-2e46b7c812dd)
This commit is contained in:
konsti 2024-02-26 10:44:24 +01:00 committed by GitHub
parent c80d5c6ffb
commit 70dad51cd9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 62 additions and 57 deletions

View file

@ -5,7 +5,7 @@ use std::path::{Path, PathBuf};
use anyhow::Result;
use reqwest::Client;
use tracing::debug;
use tracing::{debug, instrument};
use url::Url;
use cache_key::{digest, RepositoryUrl};
@ -49,6 +49,7 @@ impl GitSource {
}
/// Fetch the underlying Git repository at the given revision.
#[instrument(skip(self))]
pub fn fetch(self) -> Result<Fetch> {
// The path to the repo, within the Git database.
let ident = digest(&RepositoryUrl::new(&self.git.repository));