• 2024-09-01一个操作系统的设计与实现——第26章 多处理器(下):应用处理器引导
    26.1应用处理器当计算机启动时,不管其中有多少个CPU,都只有一个CPU会真正启动,这个CPU就称为引导处理器(BootstrapProcessor,BSP);而其他CPU会等待被BSP唤醒,这些CPU就称为应用处理器(ApplicationProcessor,AP)。BSP可以在任意时刻向所有AP广播唤醒信号,当AP接受到信号后,就会启动BIOS,随
  • 2024-09-01一个操作系统的设计与实现——第25章 多处理器(上):多处理器同步原语
    25.1多处理器同步原语的实现原理当计算机中存在不止一个CPU时,基于关中断的同步原语就失效了。这是因为每个CPU的中断是独立的,关闭一个CPU的中断并不会影响其他CPU。从本质上说,中断由rflags控制,但rflags在每个CPU中都有一个,因此,只有找到一个共享区域,才能实现多CPU间的同步原语。
  • 2024-07-03【CUDA】 由GPGPU控制核心架构考虑CUDA编程中线程块的分配
    GPGPU架构特点由于典型的GPGPU只有小的流缓存,因此一个存储器和纹理读取请求通常需要经历全局存储器的访问延迟加上互连和缓冲延迟,可能高达数百个时钟周期。与CPU通过巨大的工作集缓存而降低延迟不同,GPU硬件多线程提供了数以千计的并行独立线程,这些线程可以在一个多处理器内部