T0 Công ty lớn Tencent Thực tập Vòng 1-2
Tencent AI Infra thực tập vòng một và hai
Câu hỏi phỏng vấn thực tập Tencent AI Infra vòng một và hai thật, gồm tối ưu toán tử, high-performance computing và các hướng liên quan
Tối ưu toán tử High-performance computing
Vòng một
Kinh nghiệm dự án
- Giới thiệu kinh nghiệm dự án, gồm điểm khó kỹ thuật và điểm nổi bật
Kiến thức nền
- Trình bày khái niệm cơ bản của MPI và cách dùng
- Nguyên lý cơ bản của lập trình đa luồng là gì
- Các cơ chế lock phổ biến gồm những gì
- Điều kiện gây deadlock trong hệ điều hành và cách xử lý
- So sánh giống và khác giữa UDP và TCP
- TCP dùng những cơ chế nào để đảm bảo truyền tin cậy
Bài lập trình
- Cho một mảng chưa sắp xếp và một mảng đã sắp xếp, chèn phần tử từ mảng chưa sắp xếp vào mảng đã sắp xếp và giữ thứ tự, phân tích độ phức tạp thời gian
- Thuật toán miệng: bài toán xử lý big data kinh điển
Vòng hai
Kiến thức nền
- Hiểu kiến trúc CPU và GPU đến mức nào
- Có kinh nghiệm viết CUDA kernel không
- Định nghĩa và đặc tính của kiểu POD trong C++ là gì
- Ngoài priority queue, còn STL container nào trong C++ dùng để hiện thực heap
High-performance computing
- Giải thích các khái niệm: shuffle, Hyper-Q, SM, slot
- Công dụng và cách dùng NVIDIA Nsight
- Ý nghĩa chỉ số SOL (Speed of Light)
- Nguyên lý cơ bản của Polyhedral Model
- Ý tưởng cốt lõi của framework biên dịch TVM
- Khác biệt giữa Array of Struct và Struct of Array, cùng scenario phù hợp
- Ý tưởng thiết kế ngôn ngữ lập trình Halide
- Cách hiện thực reduce ở mức Warp
Bài lập trình
- Median cửa sổ trượt (yêu cầu dùng max-heap và min-heap)