posit-2022.0.0.0: test/WeighPosit.hs
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE DataKinds #-}
import Weigh
import Data.Vector.Storable as V
import Posit
import Posit.Internal.PositC
main :: IO ()
main = mainWith $ do
func' "Posit8 in 1M Vector" vecOf (1.0 :: Posit8)
func' "Posit16 in 1M Vector" vecOf (1.0 :: Posit16)
func' "Posit32 in 1M Vector" vecOf (1.0 :: Posit32)
func' "Posit64 in 1M Vector" vecOf (1.0 :: Posit64)
func' "Posit128 in 1M Vector" vecOf (1.0 :: Posit128)
func' "Posit256 in 1M Vector" vecOf (1.0 :: Posit256)
func' "P8 in 1M Vector" vecOf (1.0 :: P8)
func' "P16 in 1M Vector" vecOf (1.0 :: P16)
func' "P32 in 1M Vector" vecOf (1.0 :: P32)
func' "P64 in 1M Vector" vecOf (1.0 :: P64)
func' "P128 in 1M Vector" vecOf (1.0 :: P128)
func' "P256 in 1M Vector" vecOf (1.0 :: P256)
vecOf :: PositC es => Posit es -> V.Vector (Posit es)
vecOf x = V.replicate (1024*1024) x