mirror of
https://github.com/leejet/stable-diffusion.cpp.git
synced 2026-11-12 11:56:36 +00:00
perf: optimize H3 inference and segmented weight prefetch (#2240)
This commit is contained in:
1 parent
e7b7ec6d6f
commit
37bc88b5e9
17 files changed
+367
-210
No files matched your search
@@ -178,7 +178,7 @@ namespace sd {
|
||||
disable();
|
||||
return;
|
||||
}
|
||||
switch (manager->prefetch_params(owner_id_, params)) {
|
||||
switch (manager->prepare_prefetch_params(owner_id_, params)) {
|
||||
case WeightPrefetchResult::Scheduled:
|
||||
queued_params_ = std::move(params);
|
||||
queued_segment_ = next_segment;
|
||||
@@ -195,6 +195,14 @@ namespace sd {
|
||||
disable();
|
||||
}
|
||||
|
||||
void SegmentWeightPipeline::submit_next() {
|
||||
if (queued_segment_ != SIZE_MAX) {
|
||||
if (auto manager = residency_manager_.lock()) {
|
||||
manager->submit_prefetched_params(owner_id_);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SegmentWeightPipeline::clear() {
|
||||
if (auto manager = residency_manager_.lock()) {
|
||||
manager->clear_prefetched_params(owner_id_);
|
||||
|
||||
Reference in new issue
Block a user