System Engineering

System Engineering/Network

InfiniBnad에 대한 이해 (1) - 구조와 헤더

1. InfiniBand(IB) 란? AI 등을 서비스하는 HPC(High Performance Computing) 환경에서 Model이나 Checkpoint 등 TB 단위의 대용량 데이터 RDMA(Remote Dynamic Memory Access)를 위한 저지연 통신 표준입니다. RDMA란?일반적인 패킷 인입은 ring buffer > DMA > CPU > Kernel buffer > Userspace로 전달되며, 이 과정에서 IRQ로 CPU context change가 발생하여 memcpy()가 이루어집니다.RDMA의 경우 패킷이 CPU로 인입되지 않고 NIC 또는 HCA에서 offload처리되어 memory에 직접 쓰여집니다. (Zero copy)송신측의 HCA는 수신측의 가상 메모리 페이지와 물..

System Engineering/Kubernetes

Kubelet MCE Memory Error - EDAC

운용중인 시스템에 'Handling MCE Memory Error'라는 문구와 함께 여러 에러가 발생했습니다. 결론적으로 하드웨어 문제는 아니었지만 찾아본 내용을 정리한 내용입니다. * MCE = Machine Check Error EDAC(Error Detection and Corredtion)EDAC는 CPU Cache, Memory, GPU, PCI bus 등과 같은 하드웨어의 에러를 감지하고 가능하다면 이를 수정하기 위한 커널 모듈입니다.아래는 커널 문서를 정리한 내용입니다. /Documentation/driver-api/edac.rst/Documentation/admin-guide/ras.rstCPU가 Memory Controller(이하 MC)로 데이터를 쓸 때, MC는 실시간으로 Hammin..

System Engineering/Linux

iSCSI Error Handling

1. SCSI(Small Computer System Interface)SCSI란?1980년대에 HDD, 자기테이프 등의 주변장치를 위한 I/O 표준으로 Read, Write, Inquiry 등명령어 집합입니다.직렬 인터페이스인 SAS(Serial Attached SCSI)는 SCSI를 사용합니다. SCSI는 명령어를 전송하는 주체인 Initiator와 LUN(Logical Unit)을 제공하는 Target이 클라이언트 서버 구조로 구성됩니다. 두 주체는 명령어를 요청하고 응답을 받습니다.Logical unitSCSI에서 논리적인 스토리지 단위를 식별하는 번호로 하나의 물리 디스크를 의미합니다.Device Service/TaskRead, Write, Inquiry 등의 I/O 요청과 Abort, Rese..

System Engineering/Linux

[커널이야기] 리눅스 I/O 스케쥴러

드디어 어려워서 계속 미뤄왔던 남은 마지막 챕터를 정리하네요. 이 포스팅은 아래 책을 정리하며 공부한 내용입니다. 좋은 책을 출판해주신 저자님께 감사드립니다 😊http://www.yes24.com/Product/Goods/44376723 DevOps와 SE를 위한 리눅스 커널 이야기 - 예스24커널은 오랜 세월 기능이 추가되고 개선되어 오면서 완벽하게 이해하기 힘들 정도로 방대해졌다. 하지만 변하지 않는 기본 기능들이 있다. 이런 근간이 되는 기능에 대한 이해를 바탕으로 시스www.yes24.com 목차- I/O 스케줄러의 필요성과 역할- I/O 스케줄러와 파라미터 튜닝  1) Non-Multiqueue 스케줄러    > CFQ    > Deadline    > Noop - Miltiqueue의 배경 ..

Hopulence
'System Engineering' 카테고리의 글 목록