Software Prefetching using Machine learning

Irfan Ullah (울라 이르판) irfan at dke.khu.ac.kr
Tue Oct 8 23:37:51 EDT 2019


Dear All,
Thanks in advance. I am a PhD candidate, and currently I have started
working on kernel development. My professor told me to implement this paper
<https://arxiv.org/abs/1803.02329>. In this paper authors have used machine
learning to predict the next missed addresses.They used instruction
addresses (program counters PCs), and corresponding missed addresses as
features to train the machine learning classifier.
As  a kernel newbie, I don't know how to initiate the implementation. I am
thinking to implement it in the following steps:
1- Saving instruction addresses (PCs), and corresponding missed addresses
2- Perform the machine learning
3-Do the prediction using machine learning classifier, and swap in/swap out
the pages.

I have some questions that
1) How can I directly store the missed addresses, and instruction addresses
from kernel handle_mm_fault() to a file?
 2) How can I use machine learning classifier in the kernel for predicting
addresses?
3) Is there any way to do the machine learning in the user space in python,
and then transfer  the classifier in bytes forms to the kernel space for
address predictions ?

Currently, I am stuck in getting the missed addresses by storing it into
the file. I am trying to send the missed addresses to the user space from
the kernel space, and store it into the file. I know that /proc, ioctl, and
netlink are some options to exchange data between  kernel and user spaces.
I have selected the netlink, and trying to customize this code
<https://gist.github.com/JeonghunLee/17db624665da91ee46c221b00e2b93f5> for
my task. I need some type of communication API which let me do exchange
anytype of data (integers, string, bytes, and may be structures to bind all
these types of data) between kernel space, and user space.
Any type of help,  and guidelines will be highly appreciated.
Thank you.

-- 
*Best Regards,*


*Mr. Irfan Ullah*
PhD Candidate
Data and Knowledge Engineering(DKE) Lab
Department of Computer Science and Engineering
Kyung Hee University, South Korea.
 +82-010-591-51651 <+82%2010-3877-8867>
  sahibzada.iu at gmail.com
 sahibzada_irfanullah
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20191009/fb8597b7/attachment.html>


More information about the Kernelnewbies mailing list