WIA-AI-011은 다층 프로파일링 아키텍처를 제공하여 하드웨어 수준부터 애플리케이션 수준까지 성능 데이터를 수집합니다. 프로파일링 API는 타이밍, 메모리 사용량, 하드웨어 카운터, 통신 메트릭을 포착하며, 오버헤드를 최소화하기 위해 샘플링 및 계측 방식을 모두 지원합니다.
프로파일러는 여러 계층에서 데이터를 수집합니다:
// 프로파일러 초기화 및 설정
#include <wia_ai_011/profiler.h>
// 프로파일링 컨텍스트 생성
wiaProfilerContext* profiler;
wiaProfilerConfig config = {
.mode = WIA_PROFILER_TIMELINE, // 타임라인 모드
.sample_rate = 1000, // 1kHz 샘플링
.enable_hw_counters = true, // 하드웨어 카운터 활성화
.enable_memory_tracking = true, // 메모리 추적
.output_format = WIA_PROFILER_JSON // JSON 출력
};
wiaCreateProfiler(&config, &profiler);
// 프로파일링 범위 시작
wiaProfilerScope scope;
wiaProfilerBeginScope(profiler, "model_inference", &scope);
// 추적할 작업 수행
wiaLaunchKernel(context, kernel, grid, block, stream);
wiaMemcpyAsync(dst, src, size, WIA_MEMCPY_DEVICE_TO_HOST, stream);
// 프로파일링 범위 종료
wiaProfilerEndScope(profiler, &scope);
// 결과 저장
wiaProfilerExport(profiler, "profile_results.json");
wiaDestroyProfiler(profiler);
정확한 타이밍 측정은 성능 분석의 기초입니다. WIA-AI-011은 마이크로초 정밀도의 이벤트 타이머를 제공합니다:
// 고정밀 타이밍 측정
wiaEvent start, end;
wiaEventCreate(&start);
wiaEventCreate(&end);
// 이벤트 기록
wiaEventRecord(start, stream);
// 측정할 작업
for (int i = 0; i < num_iterations; i++) {
wiaLaunchKernel(context, kernel, grid, block, stream);
}
wiaEventRecord(end, stream);
wiaStreamSynchronize(stream);
// 경과 시간 계산 (밀리초)
float elapsed_ms;
wiaEventElapsedTime(&elapsed_ms, start, end);
printf("평균 커널 실행 시간: %.3f ms\n", elapsed_ms / num_iterations);
wiaEventDestroy(start);
wiaEventDestroy(end);
타임라인 프로파일링은 시간 축에 따라 모든 하드웨어 활동을 시각화하여 병목 지점, 유휴 시간, 중복 효율성을 파악할 수 있게 합니다.
타임라인 프로파일러는 스트림별, 디바이스별로 이벤트를 추적합니다:
| 이벤트 유형 | 설명 | 메트릭 |
|---|---|---|
| 커널 실행 | 컴퓨트 커널 실행 시간 | 시작/종료 시간, 점유율, FLOPS |
| 메모리 전송 | H2D, D2H, D2D 복사 | 크기, 대역폭, 지연 시간 |
| 동기화 | 스트림 대기, 이벤트 대기 | 대기 시간, 블로킹 이벤트 |
| 집합 연산 | AllReduce, Broadcast 등 | 알고리즘, 데이터 크기, 지연 시간 |
타임라인 분석을 통해 다음을 식별할 수 있습니다:
// 타임라인 추적을 위한 자동 계측
#define WIA_TRACE_SCOPE(name) \
wiaProfilerScope __scope_##__LINE__; \
wiaProfilerBeginScope(g_profiler, name, &__scope_##__LINE__); \
struct __scope_guard_##__LINE__ { \
wiaProfilerScope* s; \
~__scope_guard_##__LINE__() { wiaProfilerEndScope(g_profiler, s); } \
} __guard_##__LINE__{&__scope_##__LINE__};
// 사용 예제
void inference_pipeline() {
WIA_TRACE_SCOPE("전체_추론");
{
WIA_TRACE_SCOPE("전처리");
preprocess_input(input_data);
}
{
WIA_TRACE_SCOPE("모델_실행");
for (int layer = 0; layer < num_layers; layer++) {
WIA_TRACE_SCOPE("레이어_" + std::to_string(layer));
execute_layer(layer);
}
}
{
WIA_TRACE_SCOPE("후처리");
postprocess_output(output_data);
}
}
메모리 프로파일링은 메모리 누수, 단편화, 비효율적인 할당 패턴을 감지하여 메모리 사용을 최적화합니다.
WIA-AI-011 메모리 프로파일러는 모든 할당/해제를 추적하고 메모리 사용 패턴을 분석합니다:
// 메모리 프로파일링 활성화
wiaMemoryProfilerConfig mem_config = {
.track_allocations = true, // 모든 할당 추적
.track_callstacks = true, // 호출 스택 기록
.detect_leaks = true, // 메모리 누수 감지
.fragmentation_threshold = 0.3 // 단편화 임계값 30%
};
wiaEnableMemoryProfiler(&mem_config);
// 메모리 스냅샷 캡처
wiaMemorySnapshot snapshot;
wiaCaptureMemorySnapshot(&snapshot);
printf("총 할당 메모리: %.2f MB\n", snapshot.total_allocated / (1024.0 * 1024.0));
printf("피크 메모리 사용: %.2f MB\n", snapshot.peak_usage / (1024.0 * 1024.0));
printf("활성 할당 개수: %d\n", snapshot.active_allocations);
printf("메모리 단편화율: %.1f%%\n", snapshot.fragmentation * 100);
// 메모리 누수 보고서
wiaMemoryLeakReport leak_report;
wiaCheckMemoryLeaks(&leak_report);
if (leak_report.num_leaks > 0) {
printf("경고: %d개의 메모리 누수 감지!\n", leak_report.num_leaks);
for (int i = 0; i < leak_report.num_leaks; i++) {
printf(" 누수 #%d: %zu bytes at %s:%d\n",
i, leak_report.leaks[i].size,
leak_report.leaks[i].file,
leak_report.leaks[i].line);
}
}
메모리 대역폭 프로파일링은 실제 대역폭 활용률과 이론적 피크의 비율을 측정합니다:
// 메모리 대역폭 프로파일링
wiaMemoryBandwidthProfiler bw_profiler;
wiaCreateBandwidthProfiler(&bw_profiler);
// 커널 실행 중 대역폭 측정
wiaProfileBandwidthBegin(bw_profiler, stream);
wiaLaunchKernel(context, matmul_kernel, grid, block, stream);
wiaProfileBandwidthEnd(bw_profiler, stream);
// 결과 분석
wiaMemoryBandwidthStats stats;
wiaGetBandwidthStats(bw_profiler, &stats);
printf("실제 대역폭: %.2f GB/s\n", stats.achieved_bandwidth / 1e9);
printf("이론적 피크: %.2f GB/s\n", stats.peak_bandwidth / 1e9);
printf("대역폭 효율: %.1f%%\n",
(stats.achieved_bandwidth / stats.peak_bandwidth) * 100);
printf("평균 메모리 지연시간: %.2f ns\n", stats.avg_latency * 1e9);
루프라인 모델(Roofline Model)은 커널이 컴퓨트 바운드인지 메모리 바운드인지 판단하여 최적화 방향을 제시합니다.
루프라인 모델은 다음 공식으로 성능 상한을 정의합니다:
// 루프라인 분석을 위한 커널 메트릭 수집
wiaKernelProfiler kernel_profiler;
wiaCreateKernelProfiler(&kernel_profiler);
// 커널 프로파일링
wiaKernelMetrics metrics;
wiaProfileKernel(kernel_profiler, kernel, &metrics);
// 산술 강도 계산
double arithmetic_intensity =
(double)metrics.total_flops / (double)metrics.total_bytes;
// 루프라인 분석
wiaRooflineAnalysis analysis;
wiaComputeRoofline(&metrics, &analysis);
printf("=== 루프라인 분석 ===\n");
printf("총 FLOP: %.2e\n", (double)metrics.total_flops);
printf("총 Bytes: %.2e\n", (double)metrics.total_bytes);
printf("산술 강도: %.2f FLOP/Byte\n", arithmetic_intensity);
printf("실제 성능: %.2f TFLOPS\n", metrics.achieved_tflops);
printf("피크 성능: %.2f TFLOPS\n", analysis.peak_tflops);
printf("성능 효율: %.1f%%\n",
(metrics.achieved_tflops / analysis.peak_tflops) * 100);
// 병목 진단
if (analysis.is_compute_bound) {
printf("진단: 컴퓨트 바운드 - 연산 최적화 필요\n");
printf(" 권장: 명령어 수준 병렬성(ILP), 루프 언롤링\n");
} else {
printf("진단: 메모리 바운드 - 메모리 접근 최적화 필요\n");
printf(" 권장: 데이터 재사용, 캐시 블로킹, 메모리 코어레싱\n");
}
커널 점유율(Occupancy)은 하드웨어 활용도를 나타내는 핵심 메트릭입니다:
// 점유율 계산기
wiaOccupancyCalculator calc;
wiaKernelAttributes attrs = {
.num_regs_per_thread = 64, // 스레드당 레지스터 수
.shared_mem_per_block = 16384, // 블록당 공유 메모리 (bytes)
.block_size = 256 // 블록 크기
};
double theoretical_occupancy;
wiaCalculateOccupancy(&attrs, &theoretical_occupancy);
printf("이론적 점유율: %.1f%%\n", theoretical_occupancy * 100);
// 점유율 제한 요인 분석
wiaOccupancyLimiters limiters;
wiaAnalyzeOccupancyLimiters(&attrs, &limiters);
if (limiters.limited_by_registers) {
printf("제한 요인: 레지스터 사용량 (%.1f%%)\n",
limiters.register_pressure * 100);
}
if (limiters.limited_by_shared_memory) {
printf("제한 요인: 공유 메모리 사용량 (%.1f%%)\n",
limiters.shared_memory_pressure * 100);
}
분산 학습에서 통신 오버헤드는 전체 성능에 큰 영향을 미칩니다. 통신 프로파일링은 집합 연산, P2P 전송, 통신-연산 중복을 분석합니다.
// 통신 프로파일러 초기화
wiaCommProfiler comm_profiler;
wiaCreateCommProfiler(&comm_profiler);
// AllReduce 프로파일링
wiaCommEvent comm_event;
wiaCommProfileBegin(comm_profiler, &comm_event);
wiaAllReduce(sendbuf, recvbuf, count, WIA_FLOAT32,
WIA_SUM, comm, stream);
wiaCommProfileEnd(comm_profiler, &comm_event);
// 통신 메트릭 수집
wiaCommMetrics comm_metrics;
wiaGetCommMetrics(comm_profiler, &comm_metrics);
printf("=== 통신 프로파일링 결과 ===\n");
printf("AllReduce 지연시간: %.3f ms\n", comm_metrics.latency_ms);
printf("데이터 크기: %.2f MB\n", comm_metrics.data_size / (1024.0 * 1024.0));
printf("유효 대역폭: %.2f GB/s\n", comm_metrics.bandwidth / 1e9);
printf("알고리즘: %s\n", comm_metrics.algorithm_name);
printf("통신-연산 중복: %.1f%%\n", comm_metrics.overlap_ratio * 100);
통신 패턴 분석은 비효율적인 통신을 식별하고 최적화 기회를 제공합니다:
| 통신 패턴 | 특징 | 최적화 전략 |
|---|---|---|
| Small Message | 작은 데이터 크기, 높은 지연 시간 | 메시지 병합, 파이프라이닝 |
| Large Message | 큰 데이터 크기, 대역폭 포화 | 압축, 양자화, 희소성 활용 |
| Frequent Sync | 잦은 동기화, 블로킹 | 비동기 통신, 중복 증가 |
| Imbalanced | 랭크 간 불균형 | 로드 밸런싱, 동적 스케줄링 |
정확한 벤치마킹은 재현 가능한 성능 측정과 공정한 비교를 보장합니다.
// 벤치마크 유틸리티
class WIABenchmark {
public:
WIABenchmark(const char* name, int warmup_iters = 5, int bench_iters = 20)
: name_(name), warmup_iters_(warmup_iters), bench_iters_(bench_iters) {}
template<typename Func>
void run(Func&& func) {
// 워밍업
for (int i = 0; i < warmup_iters_; i++) {
func();
}
// 실제 측정
std::vector<double> timings;
for (int i = 0; i < bench_iters_; i++) {
auto start = std::chrono::high_resolution_clock::now();
func();
wiaDeviceSynchronize(); // 동기화 필수!
auto end = std::chrono::high_resolution_clock::now();
double elapsed_ms =
std::chrono::duration<double, std::milli>(end - start).count();
timings.push_back(elapsed_ms);
}
// 통계 계산
auto stats = compute_statistics(timings);
printf("=== %s 벤치마크 결과 ===\n", name_);
printf("평균: %.3f ms\n", stats.mean);
printf("중앙값: %.3f ms\n", stats.median);
printf("표준편차: %.3f ms\n", stats.stddev);
printf("최소: %.3f ms\n", stats.min);
printf("최대: %.3f ms\n", stats.max);
printf("95%% 신뢰구간: [%.3f, %.3f] ms\n",
stats.ci_lower, stats.ci_upper);
}
private:
const char* name_;
int warmup_iters_;
int bench_iters_;
};
// 사용 예제
WIABenchmark bench("GEMM 1024x1024", 5, 20);
bench.run([&]() {
wiaGemm(handle, WIA_OP_N, WIA_OP_N,
1024, 1024, 1024,
&alpha, A, B, &beta, C);
});
WIA-AI-011은 다음과 같은 표준 벤치마크를 제공합니다:
프로파일링 데이터를 분석하여 자동으로 최적화 제안을 생성하는 시스템입니다.
// AI 기반 최적화 어드바이저
wiaOptimizationAdvisor advisor;
wiaCreateAdvisor(&advisor);
// 프로파일링 데이터 입력
wiaAdvisorAddProfile(advisor, profiler);
// 최적화 제안 생성
wiaOptimizationRecommendations recommendations;
wiaGenerateRecommendations(advisor, &recommendations);
printf("=== 최적화 권장 사항 (%d개) ===\n", recommendations.count);
for (int i = 0; i < recommendations.count; i++) {
auto& rec = recommendations.items[i];
printf("\n[%d] %s (우선순위: %s)\n",
i+1, rec.title, rec.priority);
printf(" 설명: %s\n", rec.description);
printf(" 예상 개선: %.1f%%\n", rec.expected_improvement * 100);
printf(" 구현 난이도: %s\n", rec.difficulty);
printf(" 적용 방법:\n");
for (int j = 0; j < rec.num_steps; j++) {
printf(" %d. %s\n", j+1, rec.steps[j]);
}
}
// 예시 출력:
// [1] 커널 퓨전 적용 (우선순위: 높음)
// 설명: Conv2D와 ReLU를 단일 커널로 병합하여 메모리 접근 감소
// 예상 개선: 23.5%
// 구현 난이도: 중간
// 적용 방법:
// 1. wiaFuseKernels(conv_kernel, relu_kernel, &fused_kernel);
// 2. 퓨즈된 커널로 교체
// 3. 성능 재측정
자동 튜닝은 파라미터 공간을 탐색하여 최적의 설정을 찾습니다:
// 자동 튜너 설정
wiaAutoTuner tuner;
wiaAutoTunerConfig tuner_config = {
.search_algorithm = WIA_TUNER_BAYESIAN, // 베이지안 최적화
.max_trials = 100, // 최대 시도 횟수
.timeout_seconds = 3600, // 1시간 제한
.metric = WIA_METRIC_LATENCY // 지연시간 최소화
};
wiaCreateAutoTuner(&tuner_config, &tuner);
// 튜닝 파라미터 공간 정의
wiaAddTuningParameter(tuner, "block_size",
WIA_PARAM_INT, 64, 1024, 64); // 64-1024, step 64
wiaAddTuningParameter(tuner, "tile_size",
WIA_PARAM_INT, 8, 64, 8); // 8-64, step 8
wiaAddTuningParameter(tuner, "unroll_factor",
WIA_PARAM_INT, 1, 8, 1); // 1-8, step 1
// 튜닝 실행
wiaTuneKernel(tuner, matmul_kernel);
// 최적 파라미터 적용
wiaKernelConfig optimal_config;
wiaGetOptimalConfig(tuner, &optimal_config);
printf("=== 자동 튜닝 결과 ===\n");
printf("최적 블록 크기: %d\n", optimal_config.block_size);
printf("최적 타일 크기: %d\n", optimal_config.tile_size);
printf("최적 언롤 팩터: %d\n", optimal_config.unroll_factor);
printf("성능 개선: %.1f%%\n", optimal_config.improvement * 100);
WIA-AI-011은 미래 하드웨어 아키텍처를 지원하기 위해 지속적으로 진화합니다.
차세대 가속기는 다양한 특수 연산 유닛을 통합합니다:
PIM 기술은 메모리 대역폭 병목을 해결합니다:
// PIM 장치 지원 (미래 API 예시)
wiaDeviceProperties props;
wiaGetDeviceProperties(device, &props);
if (props.supports_pim) {
printf("PIM 지원: 활성\n");
printf("PIM 유형: %s\n", props.pim_type);
printf("PIM 연산: ");
// PIM에서 지원하는 연산 확인
if (props.pim_ops & WIA_PIM_OP_GEMM) printf("GEMM ");
if (props.pim_ops & WIA_PIM_OP_REDUCE) printf("Reduce ");
if (props.pim_ops & WIA_PIM_OP_SCAN) printf("Scan ");
printf("\n");
// PIM으로 연산 오프로드
wiaGemmPIM(A, B, C, m, n, k, WIA_PIM_DEVICE_0);
}
광학 컴퓨팅은 초저전력 고속 행렬 연산을 가능하게 합니다:
양자-고전 하이브리드 워크플로우 지원:
WIA-AI-011의 미래 발전 계획입니다.
| 버전 | 릴리스 시기 | 주요 기능 |
|---|---|---|
| v1.0 (현재) | 2025 Q1 | 기본 HAL, 텐서 연산, 메모리 관리 |
| v1.5 | 2025 Q4 | 고급 프로파일링, 자동 튜닝, 다중 스트림 최적화 |
| v2.0 | 2026 Q3 | PIM 지원, 광학 가속기 통합, CXL 3.0 |
| v2.5 | 2027 Q2 | 양자 하이브리드, 뉴로모픽 칩 지원 |
| v3.0 | 2028+ | 완전 자율 최적화, AI 코파일럿 |
WIA-AI-011의 성공은 활발한 커뮤니티와 풍부한 생태계에 달려 있습니다.
WIA-AI-011은 다음 조직들과 협력합니다:
// 커뮤니티 기여 예시: 새로운 백엔드 추가
class MyCustomBackend : public wiaBackend {
public:
// 백엔드 초기화
wiaStatus initialize() override {
// 하드웨어 초기화 로직
return WIA_SUCCESS;
}
// 디바이스 열거
wiaStatus enumerateDevices(std::vector<wiaDevice*>& devices) override {
// 디바이스 검색 로직
return WIA_SUCCESS;
}
// 커널 실행
wiaStatus launchKernel(wiaKernel* kernel,
const wiaGridDim& grid,
const wiaBlockDim& block,
wiaStream* stream) override {
// 커널 실행 로직
return WIA_SUCCESS;
}
// ... 기타 필수 메서드 구현
};
// 백엔드 등록
WIA_REGISTER_BACKEND("my_custom", MyCustomBackend);
// 사용자는 환경 변수로 백엔드 선택 가능
// export WIA_BACKEND=my_custom
WIA-AI-011은 "널리 인간을 이롭게 하라"는 철학을 다음과 같이 실천합니다:
한국은 MLPerf Inference v4.1/v5.0·MLPerf Training v4.1/v5.0·HPL/HPCG·STREAM·LMBench·EEMBC MLMark·EEMBC CoreMark-Pro·TPCx-AI 등 성능 프로파일링 표준을 채택하였다. ETRI·KAIST·서울대 반도체공동연구소·KIST·KISTI 「슈퍼컴 5호기 누리온 / 6호기」·NIPA「K-AI 클라우드」·IITP「AI 반도체 챌린지」 가 한국 NPU 8사 (리벨리온·퓨리오사·사피온·딥엑스·삼성·LG·SK·현대모비스) MLPerf 제출을 지원한다. 「K-AI Chip 2030」 로드맵에 따라 ① 양자내성암호 통합 NPU ② 광 인터커넥트 NPU (KAIST·ETRI 광통신연구단) ③ 메모리 시멘틱 패브릭 ④ in-memory computing PIM (삼성 HBM-PIM·SK AiM) ⑤ 뉴로모픽 칩 (ETRI Spike·KIST) 5개 축 개발이 진행 중이다. MSIT·MOTIE·NIPA·IITP·KATS·KOLAS·KISA·KCMVP·TTA·KEIT 10개 기관 협력 KS X ISO/IEC 표준 발행이 2030년까지 완료될 예정이다.
한국의 산업·기술 표준화는 다음 협력 체계를 통해 운영된다. 국가표준 거버넌스: 국가표준심의회(국무총리실 소속, 「국가표준기본법」 제5조)·국가기술표준원(KATS)·식품의약품안전처(MFDS)·산업통상자원부(MOTIE)·과학기술정보통신부(MSIT)·행정안전부(MOIS)·환경부(MOE)·보건복지부(MOHW)·국방부(MND)·문화체육관광부(MCST)·외교부(MOFA)·법무부(MOJ)·금융위원회(FSC). 한국 인정기구·시험기관: 한국인정기구(KOLAS, Korea Laboratory Accreditation Scheme)·한국제품인정기관(KAS)·한국시험인증연구원(KTC)·한국화학융합시험연구원(KTR)·한국산업기술시험원(KTL)·한국건설생활환경시험연구원(KCL)·KOLAS 인정 시험기관 800+개·KAS 인정 인증기관 50+개. 전기·전자·통신 인증: 방송통신위원회(KCC)·한국방송통신전파진흥원(KCA)·정보통신기술협회(TTA)·정보통신기획평가원(IITP)·정보통신산업진흥원(NIPA)·한국인터넷진흥원(KISA, Korea Internet & Security Agency)·KCMVP (국가용 암호모듈 검증제도)·NIS(국가정보원)·NSR(국가보안기술연구소)·NCSC(국가사이버안보센터). 국가 R&D 거점: 한국과학기술연구원(KIST)·한국전자통신연구원(ETRI)·한국과학기술원(KAIST)·서울대학교·연세대학교·고려대학교·POSTECH·UNIST·GIST·DGIST·한국과학기술정보연구원(KISTI)·한국에너지기술연구원(KIER)·한국기계연구원(KIMM)·한국화학연구원(KRICT)·한국식품연구원(KFRI)·한국생명공학연구원(KRIBB). 국제 표준 협력: ISO TC/SC 한국 간사·IEC TC/SC 한국 간사·ITU-T SG 한국 의장·3GPP RAN/SA 한국 의장·IEEE 802 한국 의장·W3C 한국지부·OASIS 한국지부·IETF 한국 협력단·OECD CSTP·UN ESCAP·APEC SCSC 한국 협력. 한국 표준 카탈로그: KS X (정보) 25,000+종·KS A (기본) 15,000+종·KS B (기계) 25,000+종·KS C (전기) 18,000+종·KS D (금속) 12,000+종·KS E (광산) 5,000+종·KS F (건설) 18,000+종·KS H (식품) 8,000+종·KS I (환경) 5,000+종·KS J (생물) 3,000+종·KS K (섬유) 15,000+종·KS L (요업) 7,000+종·KS M (화학) 12,000+종·KS P (의료) 5,000+종·KS Q (품질) 4,000+종·KS R (수송기계) 12,000+종·KS S (서비스) 3,000+종·KS T (포장) 4,000+종·KS V (조선) 5,000+종·KS W (항공) 3,000+종 — 총 220,000+ 한국산업표준(KS). 「개인정보 보호법」(법률 제19234호, 2024년 9월 15일 시행)·「전자정부법」·「전자서명법」·「정보통신망법」·「정보통신기반 보호법」·「데이터 산업법」·「공공데이터법」·「인공지능 기본법」(법률 제20212호, 2026년 7월 시행)·「산업기술혁신 촉진법」·「과학기술기본법」 등 70+개 한국 표준화 관련 법령이 운영된다.
한국의 디지털 전환과 표준화는 다음 협력 체계로 운영된다. 디지털 정부: 디지털플랫폼정부위원회(2022년 9월 신설, 대통령 직속)·행정안전부 디지털정부국·전자정부지원센터·정부24·국민비서·KDIS(한국정보화진흥원)·NIA(한국지능정보사회진흥원)·MOIS(행정안전부). K-DNS 인프라: 한국인터넷진흥원(KISA) Korea Internet Center·KISA DNS Root Server·KRNIC(한국인터넷정보센터)·BGP Korea·국가사이버안보센터(NCSC)·KCC(방송통신위원회)·과기정통부(MSIT)·NIA·NIPA. 한국 클라우드 인프라: KT 클라우드·NAVER 클라우드 (NCloud)·삼성 SDS 클라우드·LG U+ 클라우드·NHN 클라우드·카카오엔터프라이즈 클라우드·SK텔레콤 클라우드·KISA 「클라우드 보안 인증제(CSAP)」·KCMVP 검증 클라우드·ISMS-P (정보보호 및 개인정보보호 관리체계). 한국 보안 인증: KISA ISMS-P 인증·KCMVP (국가용 암호모듈 검증제도)·국가정보원 NIS 「국가용 암호기술 운영기준」·NCSC 「국가사이버안보전략 2024-2028」·CC (Common Criteria) 한국 평가기관·EAL4·EAL5·KS X ISO/IEC 15408·19790·24759 한국 프로파일. 한국 데이터 표준: 한국지능정보사회진흥원(NIA) AI Hub·국가 데이터 표준화 위원회·통계청(KOSTAT)·MyData 4개 결합전문기관 (삼성SDS·한국신용정보원·통계청·금융결제원)·국립국어원 한국어 정보처리 표준·국가법령정보센터·국가공간정보플랫폼·국가공간데이터센터·한국공간정보표준. 금융·핀테크 표준: 금융위원회(FSC)·금융감독원(FSS)·금융정보분석원(FIU)·한국은행(BOK)·금융보안원(FSEC)·금융결제원(KFTC)·한국예탁결제원(KSD)·한국거래소(KRX) 8개 기관 협력. 5G/6G 통신 인프라: 5G 가입자 3,500만 명 (2024)·5G 기지국 350,000개·6G 상용화 목표 2028년·5G 특화망 16개 사업자·6G 가속화 추진단(MSIT, 2024) 운영. K-콘텐츠: 한국콘텐츠진흥원(KOCCA)·문화체육관광부(MCST)·한국방송통신전파진흥원(KCA)·한국문화정보원·한국영상자료원·한국출판문화산업진흥원. 「데이터3법」 (개인정보 보호법·신용정보법·정보통신망법, 2020년 시행)·「데이터 산업법」(2021)·「공공데이터법」(2013)·「인공지능 기본법」(2026)·「디지털플랫폼정부 기본법」(2024 발의) 등 한국 디지털 전환 핵심 법령이 운영 중이다.