---
# System prepended metadata

title: PP-HW1

---

PP-HW1
=========================================

> 0716078 鄒義杰

## Q1

Q1-1:
||2|4|8|16|
|:-:|:-:|:-:|:-:|:-:|
|Vector Utilization|88.4%|85.9%|84.6%|84.1%|  

我認為造成這種 **遞減** 的趨勢是因為這段程式碼  
```c
_pp_vgt_int(maskIsGtZero, y, zero, maskAll);
while (_pp_cntbits(maskIsGtZero) > 0) {
    _pp_vmult_float(result, result, x, maskIsGtZero); // result *= x;
    _pp_vsub_int(y, y, one, maskIsNotZero);           // count--;
    _pp_vgt_int(maskIsGtZero, y, zero, maskAll);
}
```
當 VECTOR_WIDTH 增加，每次再多乘一次的時候，非 0 的位子相對更多，導致沒有用到的 lane 增加，Vector Utilization 降低。  
例如：只剩下 1 位還不為 0 時，其餘的都為 0，這樣就會降低 Vector Utilization。