add compute
add reference