Untitled
unknown
c_cpp
a month ago
1.0 kB
2
Indexable
Never
void ICL::read(Request &req, uint64_t &tick) { arg = "r"; calculator.utilFunc(req, arg, tick); uint64_t beginAt; uint64_t finishedAt = tick; uint64_t reqRemain = req.length; Request reqInternal; reqInternal.reqID = req.reqID; reqInternal.offset = req.offset; for (uint64_t i = 0; i < req.range.nlp; i++) { beginAt = tick; reqInternal.reqSubID = i + 1; reqInternal.range.slpn = req.range.slpn + i; reqInternal.length = MIN(reqRemain, logicalPageSize - reqInternal.offset); pCache->read(reqInternal, beginAt); reqRemain -= reqInternal.length; reqInternal.offset = 0; finishedAt = MAX(finishedAt, beginAt); } debugprint(LOG_ICL, "READ | LCA %" PRIu64 " + %" PRIu64 " | %" PRIu64 " - %" PRIu64 " (%" PRIu64 ")", req.range.slpn, req.range.nlp, tick, finishedAt, finishedAt - tick); tick = finishedAt; tick += applyLatency(CPU::ICL, CPU::READ); }