오랜만에 한글 컨텐츠 가끔 키온희(Keone)가 공유하는 기술 관련 글을 보며 '뭔가 대단한 것 같긴 한데, 그래서 정확히 뭐가 좋다는 거지?' 라고 궁금해하셨던 분들을 위해 준비했습니다. JIT? - 컴파일러, 캐시, 비동기... 이런 복잡한거 알필요 없습니다. 그래서 우리에게 좋은 점은? - 속도는 빨라지고, 가스비(수수료)는 저렴해집니다. 진짜 중요한 것은 '이걸 왜 하는가'입니다 - 단순히 속도가 개선된다는 사실보다, 키온희가 왜 이 주제를 메인 트윗에 걸어둘 정도로 중요하게 여기는지가 핵심입니다. 1. 남들이 가지 않는 길 - 대부분의 팀은 이런 근본적인(low-level) 영역까지는 손대지 않습니다. - 시도하더라도 '찍먹' 수준에 그치고, 실제 제품에 깊이 녹여내려는 경우는 드뭅니다. 2. '어떻게 해결할 것인가' - 이 집념이 팀은 합의, 실행, 네트워크 등 블록체인의 핵심 요소를 이미 예술의 경지로 끌어올습니다. - 이제는 그보다 더 깊은 곳의 병목 현상을 해결하려 합니다. 이를 위해 컴파일러 전담팀을 운영한다것은 매우 불리쉬합니다. - 이는 마케팅을 위한 기술 검증(POC)과는 차원이 다릅니다. 3. 애플과 같은 완성도 추구 - 이러한 모습은 마치 애플(Apple)과 같습니다. - 아이폰이 매년 새로운 모델을 내놓을 때마다 '어떻게 이런 디테일까지 신경 썼을까' 감탄하게 되는 것처럼, 이 팀도 최고의 완성도를 위해 모든 병목 지점에 전문가를 배치해 근본적인 문제 해결에 집중합니다. - 키온희(Keone)가 중요하게 언급하는 기술들은 애플의 WWDC 신제품 발표와 같다고 볼 수 있습니다. 그래서 글의 대부분은, "우리는 또 한번 매스어답션에 가까워졌다" , "우리 커뮤니티와 에코시스템은 또한번 그로스했다" 를 증명하는 글에 가깝습니다. ----------------------------------------------- "모나드에서 하는거 사실 별거 아니다" "그냥 개념알고 코드 몇줄 짜면 되는거다 어려운거 아니다" "그거 별거 아니다" 반론: - 물론 '개념 자체는 이미 알려진 것이고, 코드 몇 줄로 구현할 수 있는 것 아니냐'고 말하는 사람들도 있습니다. - 네, 개념 자체는 그리 어렵지 않을 수 있습니다. 하지만 진짜 어려움은 그 개념에 수많은 '맥락(Context)'이 더해질 때 시작됩니다. - 하나의 기술을 다른 모든 영역과 조화롭게 융합시키고, 전체 시스템의 성능을 끌어올리는 것은 단순히 개념을 아는 것과는 차원이 다른 문제입니다. - L1 블록체인을 직접 구축해 본 사람이라면, 코어의 모든 영역을 깊이 연구하고 실제 제품으로 완성하는 것이 얼마나 엄청나게 어려운 일인지 공감할 것입니다. @keoneHD @koreanads @monad_dev @monad
Keone Hon ⨀
Keone Hon ⨀17 ago, 02:43
Portare la compilazione JIT nell'EVM La compilazione Just-in-Time (JIT) è frequentemente citata come un'idea interessante per ottimizzare l'EVM. Ma ci sono delle sfide: - è difficile ottenere che tutto il comportamento esatto (costi in gas, gestione degli errori) corrisponda. Ad esempio, anche se il codice è semplificato dal compilatore, i costi in gas originali devono essere preservati. - la compilazione è costosa, quindi non tutto dovrebbe essere compilato, e non può essere fatta al volo senza influenzare la latenza. - gli artefatti compilati sono molto più grandi del bytecode originale. - ottenere il massimo dal compilatore richiede creatività per affrontare aspetti unici del problema. È necessaria una tonnellata di ricerca, benchmarking e ottimizzazione ripetuta della generazione di codice macchina. Il team di @category_xyz ha perseverato e costruito un potente compilatore che affronta tutti questi problemi, consentendo al codice dei contratti di essere eseguito più velocemente e in modo più efficiente rispetto alle implementazioni EVM esistenti. Il client Monad analizza i contratti utilizzati frequentemente (misurando in base al gas cumulativo consumato) e memorizza nella cache il codice nativo in modo che le chiamate successive vengano eseguite in modo più efficiente. La compilazione avviene in modo asincrono; prima che la compilazione sia terminata, la VM esegue il codice utilizzando un interprete separato a bassa latenza e altamente ottimizzato. Questo è ora attivo su Monad Testnet a partire dall'aggiornamento di martedì! Controlla la documentazione per ulteriori informazioni, fresche di stampa. Grazie a @__inshorts e al resto del team di compilazione di Category Labs per un lavoro ben fatto!
7,65K