Comments (4)
What CPU type are you using? The [Firmware Bug]: TSC doesn't count with P0 frequency!
seems similar to #4099 Is it also an AMD CPU? Can you reproduce these differences in an Intel or an ARM CPU?
Also, could you try to run your test with --level Debug
? That outputs some information with event_start/event_end
that could be useful for timing.
from firecracker.
I'm on an AMD Ryzen 5 7640U
, I can try to repro on ARM
from firecracker.
Hi, can you try the same workaround as in #4099, i.e. use lapic=notscdeadline
as a Linux boot option? Does that workaround the issue?
from firecracker.
i've been looking at firecracker source in recent days and i saw this issue so thought i would investigate. i see same behaviour on ubuntu kernel 6 host/guest.
if we look at the source, we can see the initial timestamp for boot_timer is recorded here:
https://github.com/firecracker-microvm/firecracker/blob/v1.7.0/src/vmm/src/builder.rs#L233
this is before all the work is done to load kernel, initrd (optionally) from disk, configure any boot disk, setup the cpus and guest memory, start the guest kernel and attach devices etc.
you can see the "kick devices" message is happening after all that work has been done when resume_vm is called here
00.036482 2024-02-07T14:14:16.726643784 [anonymous-instance:main] Artificially kick devices.
https://github.com/firecracker-microvm/firecracker/blob/v1.7.0/src/vmm/src/builder.rs#L385
so the 8ms you are talking about is just the time to give the guest thread state machines a kick and start running i think? π€
imo, 78ms and 43 ms are the correct timings if what we want to measure includes all the setup and configuration of the vm to the time the port gets kicked in the guest.
from firecracker.
Related Issues (20)
- Use `core::mem::offset_of!()` macro (after moving to Rust 1.77.0)
- [Bug] Booting the VM kernel gives "Internal error: undefined instruction: 0 [#1] SMP" on Volterra HOT 2
- Implement a solution for unmapping guest memory from kernel address space
- Rustify Snapshot Module HOT 7
- Wrong pasword HOT 4
- Remove multi irq support for mmio devices HOT 2
- Refactoring of devices management
- Diff Snapshotting feature does not take into account full snapshots
- Ensure errors types make use of `displaydoc::Display` and`thiserror::Error` HOT 2
- Taking Diff Snapshots is not transactional HOT 2
- Refactor `vmm` builder code to simplify logic that creates the microVM to boot
- Use `u32` to describe descriptor chain lengths HOT 2
- Avoid IoVecBuffer allocations in the TX network data path HOT 1
- Error writing to file - write (28: No space left on device) [IP: 185.125.190.36 80] HOT 8
- [Feature Request] Core Scheduling HOT 1
- Interact with the MicroVM in jail environment and daemon mode. HOT 1
- This error cannot be resolved when I measure boot timeοΌ HOT 3
- no internet inside the VM HOT 2
- [Kernel Bug] io_uring_register() syscall exits with EBADF on 5.10.214
- Use `u32` to describe vsock related buffer sizes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from firecracker.