Giter VIP home page Giter VIP logo

linux-memory-analysis-in-ai-wokload's People

Contributors

sypark9646 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

linux-memory-analysis-in-ai-wokload's Issues

Heatmap Graph

A large scale analysis of hundreds of in-memory cache clusters at Twitter
image

LRU simulation 실행 시간 단축

  • check whether key in the keylist using rank
  • text readline -> read csv chunk
  • orderedDict 보다 list 로 캐시를 구현하는 것이 훨씬 빠르다. (약 60%빨라짐)
    • orderedDict: 15:50:54.3/1000000 lines
    • list: 5:44:18.9/1000000 lines
  • ranking 확인 전에 해시셋으로 이미 나왔던 블록주소인지 확인한다. (약 70%빨라짐)
    • 이전: 5:44:18.9/1000000 lines
    • 이후: 1:35:46.7/1000000 lines

큰 데이터 plot

gnuplot 84027848의 점을 plotting 하려고 하는데,

libc++abi.dylib: terminating with uncaught exception of type std::bad_alloc: std::bad_alloc
Error: plot window (gnuplot_qt) not responding - will restart

다른 툴 찾아보기

데이터 전처리

  • timestamp 전후로 나누기
  • raw data comment 제거
  • timestamp 지우기
    • 메모리 트레이싱을 할 때, 스토리지 방문하여 write 하기 때문에 타임스탬프 그 자체는 의미 없음. 사용하게 된다면 상대적인 시간으로 사용한다.

linux ulimit commends 사용하여 자원 제한

ulimit명령어를 이용하여 프로세스들에 대한 시스템자원사용을 제한할수 있다.
하지만 ulimit명령어를 사용하면 커널의 성능과 기능에 막대한 영향을 주게 되므로 사용시에 주의해야 한다.

  • ulimit명령어로 설정가능한 시스템자원 제한사항
    1. 코어(core)파일 생성시 최대 크기 제한
    2. 쉘에 의해 만들어질 수 있는 파일의 최대크기 제한
    3. 한 사용자에게 허용 가능한 프로세스(user processes)의 최대 개수 제한
    4. 쉘에 허용 가능한 가상메모리(virtual memory)의 최대량 제한
    5. 오픈할수 있는 파일기술자(FD: file descriptor)의 최대 개수 제한
    6. 스택크기(stack size)의 최대크기 제한
    7. 초(second)당 사용 가능한 CPU의 최대 허용 시간(cpu time) 제한
    8. 메모리에 상주(resident set size)할수 있는 최대 크기 제한
    9. 512byte 블록단위로 파이프크기(pipe size)설정
    10. 프로세스 데이터세그먼트(process data segment)의 최대 크기 제한

ulimit명령어의 사용은 운영체제(kernel)의 실행에 결정적인 요인으로 작용할수도 있기 때문에
설정할 때에는 시스템 상황을 정확하게 파악하여 설정결과에 대해서 미리 예측한후에 사용해야 한다.

  • 하드웨어적인제한(H)과 소프트웨어적인제한(S)
    하드웨어적인 제한이란, 일반적으로 소프트웨어적인 제한이 넘어갈수 없는 제한을 말한다.
    소프트웨어적인 제한이란, 사용자가 일반적으로 제한사항을 지정하여 지정하여 자원사용을 제한하는것을 말한다.

시스템의 하드웨어적인 제한사항을 모두 보려면 "-Ha"옵션을 사용하면 되며,
소프트웨어적인 제한사항을 모두 확인하려면 "-Sa"옵션을 사용하면 된다.
"H", "S"를 주지 않고 "-a"옵션만을 사용하면 소프트웨어적인 제한사항을 보여 준다

※ ulimit의 설정값을 변경후 재부팅을 하게 되면 설정값은 초기화가 된다.
따라서 .bash_profile에 명령어를 설정하거나, /etc/profile파일에 설정명령어를 넣어두면 재부팅시에도 해당값이 유지가 된다.

그래프

  • simulation
    • LRU simulation
      • write
      • read & write
    • LFU simulation
      • write
      • read & write
  • graph
    • block address - logical time
    • block address - access count
    • ranking(LRU) - access count
    • ranking(LRU) - accumulate access %

시계열 데이터 머신러닝 접근법

  • 머신러닝
    • Multi-Layer Perceptron (MLP)
    • Bayesian Neural Network (BNN)
    • Radial Basis Functions (RBF)
    • Generalized Regression Neural Networks (GRNN)
    • kernel regression K-Nearest Neighbor regression (KNN)
    • CART regression trees (CART)
    • Support Vector Regression (SVR)
    • Gaussian Processes (GP)
  • 딥러닝
    • Recurrent Neural Network (RNN)
    • Long Short-Term Memory (LSTM)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.