Comments (8)
Any chance this will be configurable via cmake / compiler switch? L2 TLB was unified with Haswell (1024 entries for 4K/2MB pages, 8 way associative), but L1 TLB is still 128 entries for 4K pages, 8 way associative / 8 per thread for 2 MB pages. I am wondering if one can see a difference on some workloads.
If you are looking into automatic stuff like this based on the hardware see Processor Identification CPUID Instruction Note.pdf
from libhermit.
@stlankes Is this issue open to working on?
from libhermit.
Hello @stlankes ! Right now I am working on this project as my University course project and I am keen to solve this issue and do the enhancement if possible. Can you please guide me by throwing some light on this problem?
Thank you in advance!
from libhermit.
Do you want to develop this feature on the C version? The Rust version is more active and easier to support.
from libhermit.
@stlankes Is it possible to first develop on C and then on Rust?
We have no issues with the rust version but just the issue is we don't know rust language. So, will that be an issue?
If not, we can try to develop it on rust and later see for the relevant changes in C.
from libhermit.
FYI. @stlankes me and @yash982000 are in same team.
from libhermit.
AFAIK the Rust version already uses LargePages. Besides that, I think that porting code from C to Rust is only applicable in limited cases, as the languages simply work a bit different. @meet-akbari you can of course try to tackle the issue, but keep in mind that this is not an easy issue, it requires a lot of testing for correctness, and the impact will be little, as Hermitcore is not developed active anymore.
If you need some resources to get some technical background:
- https://wiki.osdev.org/Paging
- https://wiki.osdev.org/Page_Tables
- https://************.com/x86-paging
from libhermit.
Okay! Thank you @jounathaen for your guidance and suggestion. As you have said it is not an easy issue, but still we will try it out by going through the resources you have given and some of by ourselves.
from libhermit.
Related Issues (20)
- Multicast support within mmnif
- HermitCore shutdown hangs HOT 2
- clang isn't able to build loader HOT 1
- GCov is not working with uhyve/qemu
- Page within heap area also belongs to page table HOT 6
- Uhyve file read/write should not assume target buffer is contiguous in physical memory HOT 4
- Dependabot couldn't find a Cargo.toml for this project
- Docker container outdated HOT 3
- KVM entry failure HOT 29
- Trigger build for RDMA migration
- Identical expression HOT 1
- NPB in HermitCore HOT 23
- Can't link to pthread and sed. HOT 6
- Typo in vioif error message HOT 2
- Compatibility with ARM devices / Android HOT 2
- Syscall write() broken on qemu
- does hermitcore have full support for numa? HOT 4
- proxy: KVM: receive shutdown command : No such file or directory HOT 13
- Compiling application with clang and linking with x86_64-hermit-ld
- segmentation fault when running tests in multi-kernel&virtual machine mode 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 libhermit.