create benchmark framework
add cast benchmark