From da5a27efd370a47eabd1cae0ddd102c97a00b9eb Mon Sep 17 00:00:00 2001 From: Jan Laukemann Date: Fri, 3 Aug 2018 02:14:11 +0200 Subject: [PATCH] bugfix in ld/st algorithm and new measurements --- osaca/data/zen_data.csv | 2 ++ osaca/eu_sched.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/osaca/data/zen_data.csv b/osaca/data/zen_data.csv index e035e78..7543471 100644 --- a/osaca/data/zen_data.csv +++ b/osaca/data/zen_data.csv @@ -90,3 +90,5 @@ vsubpd-ymm_ymm_mem,1.0,3.0,"(0, 0, 1.0, 1.0, 0, 0, 0, 0, 1.0, 1.0)" vsubsd-xmm_xmm_mem,0.5,3.0,"(0, 0, 0.5, 0.5, 0, 0, 0, 0, 0.5, 0.5)" vsubsd-xmm_xmm_xmm,0.5,3.0,"(0, 0, 0.5, 0.5, 0, 0, 0, 0, 0, 0)" vsubss-xmm_xmm_xmm,0.5,3.0,"(0, 0, 0.5, 0.5, 0, 0, 0, 0, 0, 0)" +vmovaps-xmm_mem,0.5,3.0,"(0.5, 0.5, 0, 0, 0, 0, 0, 0, 0.5, 0.5)" +movq_r64_xmm,1.0,-1,"(0, 0, 1.0, 0, 0, 0, 0, 0, 0, 0)" diff --git a/osaca/eu_sched.py b/osaca/eu_sched.py index c878a49..f300d35 100755 --- a/osaca/eu_sched.py +++ b/osaca/eu_sched.py @@ -58,7 +58,7 @@ class Scheduler(object): # Count the number of store instr if we schedule for an architecture with par ld/st if(self.en_par_ldst): for i, instrForm in enumerate(self.instrList): - if(isinstance(instrForm[1], MemAddr)): + if(isinstance(instrForm[1], MemAddr) and len(instrForm) > 3): print('({}) is st --> par_ldst = {}'.format(i, par_ldst + 1)) par_ldst += 1 # Check if there's a port occupation stored in the CSV, otherwise leave the