Đối với nvidia (và amd cho vấn đề đó) gpus bộ nhớ cục bộ được chia thành các ngân hàng bộ nhớ. Mỗi ngân hàng chỉ có thể giải quyết một tập dữ liệu tại một thời điểm, vì vậy nếu một nửa chập cố gắng tải / lưu trữ dữ liệu từ / đến cùng một ngân hàng thì quyền truy cập phải được tuần tự hóa (đây là xung đột ngân hàng). Đối với gt200 gpus, có 16 ngân hàng (32 ngân hàng cho fermi), 16 hoặc 32 ngân hàng cho AMD gpus (57xx trở lên: 32, mọi thứ bên dưới: 16)), được xen kẽ với độ chi tiết là 32 bit (vì vậy byte 0-3 nằm trong ngân hàng 1, 4-7 trong ngân hàng 2, ..., 64-69 trong ngân hàng 1, v.v.). Để có hình dung tốt hơn, về cơ bản nó trông như thế này:
Bank | 1 | 2 | 3 |...
Address | 0 1 2 3 | 4 5 6 7 | 8 9 10 11 |...
Address | 64 65 66 67 | 68 69 70 71 | 72 73 74 75 |...
...
Vì vậy, nếu mỗi luồng trong halfwarp truy cập các giá trị 32bit liên tiếp thì không có xung đột ngân hàng. Một ngoại lệ từ quy tắc này (mọi luồng phải truy cập vào ngân hàng riêng của nó) là các chương trình phát sóng: Nếu tất cả các luồng truy cập cùng một địa chỉ, giá trị chỉ được đọc một lần và được phát sóng cho tất cả các luồng (đối với GT200, nó phải là tất cả các luồng trong halfwarp truy cập cùng một địa chỉ, iirc fermi và AMD gpus có thể thực hiện việc này đối với bất kỳ số luồng nào truy cập cùng một giá trị).