Skip to content

Commit 80fef04

Browse files
authored
Forward ensemble request parameters to composing models (#261)
1 parent 36c3be6 commit 80fef04

File tree

3 files changed

+16
-1
lines changed

3 files changed

+16
-1
lines changed

src/ensemble_scheduler.cc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -347,6 +347,9 @@ class EnsembleContext {
347347
InferenceRequest::SequenceId correlation_id_;
348348
uint64_t priority_;
349349
uint64_t timeout_;
350+
// The parameters of the ensemble-level request. Use this to forward
351+
// parameters to composing models.
352+
std::deque<InferenceParameter> parameters_;
350353

351354
// Objects related to the ensemble infer request
352355
Status ensemble_status_;
@@ -462,6 +465,7 @@ EnsembleContext::EnsembleContext(
462465
flags_ = lrequest->Flags();
463466
priority_ = lrequest->Priority();
464467
timeout_ = lrequest->TimeoutMicroseconds();
468+
parameters_ = lrequest->Parameters();
465469

466470
for (const auto& pr : lrequest->ImmutableInputs()) {
467471
const InferenceRequest::Input* input = pr.second;
@@ -951,6 +955,7 @@ EnsembleContext::InitStep(
951955
irequest->SetFlags(flags);
952956
irequest->SetPriority(priority_);
953957
irequest->SetTimeoutMicroseconds(timeout_);
958+
irequest->SetParameters(parameters_);
954959
#ifdef TRITON_ENABLE_STATS
955960
irequest->SetSecondaryStatsAggregator(
956961
&request_tracker_->ContextStatsAggregator());

src/infer_request.cc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,15 @@ InferenceRequest::AddParameter(const char* name, const bool value)
241241
return Status::Success;
242242
}
243243

244+
Status
245+
InferenceRequest::SetParameters(
246+
const std::deque<InferenceParameter>& parameters)
247+
{
248+
// NOTE: For BYTES parameters, this will shallow copy the pointer for now.
249+
parameters_ = parameters;
250+
return Status::Success;
251+
}
252+
244253
#ifdef TRITON_ENABLE_TRACING
245254
Status
246255
InferenceRequest::TraceInputTensors(

src/infer_request.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,10 +362,11 @@ class InferenceRequest {
362362
TRITONSERVER_InferenceTraceActivity activity, const std::string& msg);
363363
#endif // TRITON_ENABLE_TRACING
364364

365-
// Add an parameter to the request.
365+
// Add a parameter to the request.
366366
Status AddParameter(const char* name, const char* value);
367367
Status AddParameter(const char* name, const int64_t value);
368368
Status AddParameter(const char* name, const bool value);
369+
Status SetParameters(const std::deque<InferenceParameter>& parameters);
369370
const std::deque<InferenceParameter>& Parameters() const
370371
{
371372
return parameters_;

0 commit comments

Comments
 (0)