fix: address review findings in grid sampler, parallel optimization, and CSV export
- Rename stale "GridSearchSampler" panic message to "GridSampler" - Assert concurrency > 0 in optimize_parallel to prevent deadlock - Fix inaccurate comment in CSV export (empty for all non-complete trials, not just pruned)
This commit is contained in:
+2
-2
@@ -601,7 +601,7 @@ impl Sampler for GridSampler {
|
|||||||
// Check if all points have been exhausted
|
// Check if all points have been exhausted
|
||||||
assert!(
|
assert!(
|
||||||
cached.current_index < cached.points.len(),
|
cached.current_index < cached.points.len(),
|
||||||
"GridSearchSampler: all grid points exhausted"
|
"GridSampler: all grid points exhausted"
|
||||||
);
|
);
|
||||||
|
|
||||||
// Get the current grid point and advance the index
|
// Get the current grid point and advance the index
|
||||||
@@ -908,7 +908,7 @@ mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "GridSearchSampler: all grid points exhausted")]
|
#[should_panic(expected = "GridSampler: all grid points exhausted")]
|
||||||
fn test_sampler_panics_after_exhaustion() {
|
fn test_sampler_panics_after_exhaustion() {
|
||||||
let sampler = GridSampler::new();
|
let sampler = GridSampler::new();
|
||||||
let dist = Distribution::Categorical(CategoricalDistribution { n_choices: 2 });
|
let dist = Distribution::Categorical(CategoricalDistribution { n_choices: 2 });
|
||||||
|
|||||||
@@ -171,6 +171,8 @@ where
|
|||||||
use tokio::sync::Semaphore;
|
use tokio::sync::Semaphore;
|
||||||
use tokio::task::JoinSet;
|
use tokio::task::JoinSet;
|
||||||
|
|
||||||
|
assert!(concurrency > 0, "concurrency must be at least 1");
|
||||||
|
|
||||||
#[cfg(feature = "tracing")]
|
#[cfg(feature = "tracing")]
|
||||||
let _span = tracing::info_span!("optimize_parallel", n_trials, concurrency, direction = ?self.direction).entered();
|
let _span = tracing::info_span!("optimize_parallel", n_trials, concurrency, direction = ?self.direction).entered();
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -91,7 +91,7 @@ where
|
|||||||
for trial in trials.iter() {
|
for trial in trials.iter() {
|
||||||
write!(writer, "{}", trial.id)?;
|
write!(writer, "{}", trial.id)?;
|
||||||
|
|
||||||
// Value: empty for pruned trials.
|
// Value: empty for non-complete trials.
|
||||||
if trial.state == TrialState::Complete {
|
if trial.state == TrialState::Complete {
|
||||||
write!(writer, ",{}", trial.value)?;
|
write!(writer, ",{}", trial.value)?;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user