Class BypassPPP¶
Defined in File bypass_ppp.h
Inheritance Relationships¶
Base Type¶
public switchml::PrePostProcessor(Class PrePostProcessor)
Class Documentation¶
-
class
switchml::BypassPPP: public switchml::PrePostProcessor¶ A class that ignores prepostprocessing completely and just serves as a placeholder.
It is used for debugging and measuring performance without any prepostprocessing. It consists of mostly empty inline functions that will most likely be simply compiled away.
Public Functions
-
inline
BypassPPP(Config &config, WorkerTid worker_tid, Numel ltu_size, Numel batch_num_ltus)¶ Calls the super class constructor.
- Parameters
config – [in] A reference to the context’s configuration.
worker_tid – [in] The worker thread that this prepostprocessor belongs to.
ltu_size – [in] The size in bytes of the logical transmission unit used by the backend.
batch_num_ltus – [in] How many LTUs constitute a batch.
-
~BypassPPP() = default¶
-
inline virtual uint64_t
SetupJobSlice(JobSlice *job_slice) override¶ Compute the number of LTUs needed.
- Parameters
job_slice – [in] A pointer to the job slice currently being worked on by the worker thread.
- Returns
uint64_t the number of transmission units that prepostprocessor will need to be sent and received by the backend.
-
inline virtual bool
NeedsExtraBatch() override¶ always return false
- Returns
true Never
- Returns
false Always
-
inline void
PreprocessSingle(__attribute__((unused)) uint64_t pkt_id, __attribute__((unused)) void *entries_ptr, __attribute__((unused)) void *extra_info) override¶ Do nothing.
- Parameters
pkt_id – ignored
entries_ptr – ignored
extra_info – ignored
-
inline void
PostprocessSingle(__attribute__((unused)) uint64_t pkt_id, __attribute__((unused)) void *entries_ptr, __attribute__((unused)) void *extra_info) override¶ Do nothing.
- Parameters
pkt_id – ignored
entries_ptr – ignored
extra_info – ignored
-
inline virtual void
CleanupJobSlice() override¶ Do nothing.
-
inline