Skip to Main Content
Recently, multithreading became a standard technique to improve the processor utilization and system performance. Hardware support is provided for coarse-grained as well as simultaneous multithreading. In particular, embedded devices combine processor cores and varying sets of coprocessors to fulfill the requirements of their dedicated application field. In this paper, a simultaneous multithreaded processor is investigated that applies dynamic priorities for each thread on the instruction level. By means of a synchronization coprocessor, priorities of threads are dynamically adapted when other threads have to wait for a given thread. Based on simulations of a network-processing workload, two strategies of dynamic priority adaptation are evaluated and compared with static prioritization. As a result, performance gain can be shown.