Files
TBgen_App/autoline/__pycache__/TB_autoline.cpython-312.pyc

128 lines
30 KiB
Plaintext
Raw Normal View History

2026-03-30 16:46:48 +08:00
<EFBFBD>
<00><><EFBFBD>i<EFBFBD>^<00><00><><00>dZddlZddlZddlZddlZddlmZddlm Z m
Z
ddl m Z ddlm ZddlmZddlmZdd lmZdd
lmZdd lmZdd lmZdd lmZddlmZd<0F>ZGd<10>d<11>Z Gd<12>d<13>Z!y)z<>
Description : The main function of autoline, originally the first part of autoline.py in AutoBench 1.0
Author : Ruidi Qiu (r.qiu@tum.de)
Time : 2024/7/24 11:44:15
LastEdited : 2024/9/1 10:32:18
<EFBFBD>N)<01>Config)<02>save_dict_json_form<72>log_localprefix)<01>HDLBitsProbset)<01>
autologger)<01>Timer)<01> TaskTBgen)<01> TaskTBsim)<01> TaskTBcheck)<01>
TaskTBeval)<01>
BaseScript)<01> llm_manager)<01> TaskTBCGAc<00><<00>t<00>}t|<00>}|<01>y<00>N)r<00>AutoLine)<02>config<69>autolines <20>:/home/zhang/CorrectBench/TBgen_App/autoline/TB_autoline.py<70> run_autoliners<00><00> <13>X<EFBFBD>F<EFBFBD><17><06><1F>H<EFBFBD> <0C>J<EFBFBD>c<00>4<00>eZdZdZdefd<03>Zd<04>Zd<05>Zd<06>Zd<07>Z y) rzthe class of the autolinerc<00><><00>||_t|_|jj|jdd<02>dud<03>|j <00>t
j j|jjd<04>|_
g|_ |jjduxs|jjdk(|_y)Nr<00> promptscriptzCconfig.autoline.promptscript is None, please check the config file.zChatbench_RunInfo.json<6F> TBgensimeval)r<00>logger<65>assert_<74>get_item<65> load_data<74>os<6F>path<74>join<69>save<76>root<6F> run_info_path<74>run_infor<00>onlyrun<75> analyzer_en)<02>selfrs r<00>__init__zAutoLine.__init__%s<><00><00><1C><04> <0B><1C><04> <0B> <0C> <0B> <0B><1B><1B>F<EFBFBD>O<EFBFBD>O<EFBFBD>J<EFBFBD><0E>G<>t<EFBFBD>S<>V[<02> \<02> <0C><0E><0E><18> <20>W<EFBFBD>W<EFBFBD>\<5C>\<5C>&<26>+<2B>+<2B>*:<3A>*:<3A><T<>U<><04><1A><1A><04> <0A>"<22>O<EFBFBD>O<EFBFBD>3<>3<>t<EFBFBD>;<3B>k<><16><1F><1F>AX<41>AX<41>\j<>Aj<41><04>rc<00><><00>t|jj<00>D]<5D>\}}|d}|jj d<02>|jj d|dz|jj
|fz<00>t ||j<00>}|j<00>}|jj|<05>t|j|j<00><00><>|jr|j<00>yy)N<>task_id<69>zC######################### task %d/%d [%s] #########################<23>)<0F> enumerate<74>probset<65>datar<00>info<66>num<75> AutoLine_Taskr<00>runr&<00>appendrr%r(<00> run_analyzer)r)<00>idx<64>probdata_singler,<00>one_task<73>run_info_singles rr5z AutoLine.run0s<><00><00>$-<2D>d<EFBFBD>l<EFBFBD>l<EFBFBD>.?<3F>.?<3F>$@<40> C<01> <20>C<EFBFBD><1F>%<25>i<EFBFBD>0<>G<EFBFBD> <10>K<EFBFBD>K<EFBFBD> <1C> <1C>R<EFBFBD> <20> <10>K<EFBFBD>K<EFBFBD> <1C> <1C>b<>fi<66>jk<6A>fk<66>mq<6D>my<6D>my<6D>m}<7D>m}<7D>@G<02>fH<02>H<02> I<02>$<24>_<EFBFBD>d<EFBFBD>k<EFBFBD>k<EFBFBD>B<>H<EFBFBD>&<26>l<EFBFBD>l<EFBFBD>n<EFBFBD>O<EFBFBD> <10>M<EFBFBD>M<EFBFBD> <20> <20><1F> 1<> <1F><04> <0A> <0A>t<EFBFBD>/A<>/A<> B<> C<01> <10> <1B> <1B> <10> <1D> <1D> <1F> rc<00>&<00>|j|i|<02><01>Sr<00>r5<00>r)<00>args<67>kwargss r<00>__call__zAutoLine.__call__><00><00><00><17>t<EFBFBD>x<EFBFBD>x<EFBFBD><14>(<28><16>(<28>(rc<00><><00>|jjj}t<00>|_|jj |<01>yr)rrr0r<00>load_by_config)r)<00> cfg_probsets rrzAutoLine.load_dataAs3<00><00><1A>k<EFBFBD>k<EFBFBD>*<2A>*<2A>2<>2<> <0B>%<25>'<27><04> <0C> <0C> <0C> <0C>#<23>#<23>K<EFBFBD>0rc<00><><00>tj|j|jjj
<00>}|j <00>tj|j<00>yr)
<EFBFBD>al<61>Analyzerr&r<00>gpt<70>modelr5rr2<00>messages)r)<00>analyzers rr7zAutoLine.run_analyzerFs?<00><00><15>;<3B>;<3B>t<EFBFBD>}<7D>}<7D>d<EFBFBD>k<EFBFBD>k<EFBFBD>o<EFBFBD>o<EFBFBD>.C<>.C<>D<><08><10> <0C> <0C><0E><0E> <0B> <0B>H<EFBFBD>%<25>%<25>&rN)
<EFBFBD>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__rr*r5rArr7<00>rrrr#s'<00><00>#<23> l<01>v<EFBFBD> l<01>  <20>)<29>1<>
'rrc<00><><00>eZdZdedefd<03>Zd<04>Zddefd<07>Zddefd<08>Z ddefd <09>Z
ddefd
<EFBFBD>Z dd <0B>Z d <0C>Z d <0A>Zd<0E>Zd<0F>Zed<10><00>Zd<11>Zy)r4<00> prob_datarc<00><><00>||_||_|jjj|_|d|_|d|_|d|_|d|_|d|_ |jdd<00>|_ |jdd<00>|_ |jdd<00>|_ |jjj|_|jjj j"|_t$j&j)|jj*j,|j
<00>|_|j.|_t%j2|j.d <09>
<EFBFBD>t$j&j)|j.d <0B>|_t7j8|j|j4<00>|jj:|_|jj<|_|jj@|_!|jjjD|_"|jjF|_$d|_%d|_&d|_'d|_(|jjj jR|_*|jjV|_,|jj jZ|_-|jj j\|_.|jj j^|_/|jj j`|_0|jjbjd|_3d|_4d|_5d|_6d|_d|_7d |_8d |_9d|_:d|_;d|_<d |_=d|_>d|_?i|_@i|_Ad |_Bg|_Cg|_Dg|_Ed|_F|j
ddd|jfd<11>|_Gt<>j<><00>t<>j<><00>y)Nr,<00> task_number<65> description<6F>header<65> module_code<64> testbench<63>mutants<74>
llmgen_RTLT<EFBFBD><01>exist_okzDUT.v<>initializationrFg<00>Init)r,<00>stage<67>pass<73>coverage<67> cga_enabled)LrrSrIrJ<00>
main_modelr,<00>task_NO<4E>prob_descriptionrW<00>
DUT_golden<EFBFBD>get<65> TB_golden<65> mutant_list<73> rtlgen_list<73> rtlgen_modelr<00>TBcheck<63>rtl_numr r!r"r#r$<00>task_dir<69> working_dir<69>makedirs<72>dut_path<74>ls<6C> save_code<64> update_desc<73>error_interruption<6F>error_interuption<6F>save_finalcodes<65>
save_codes<EFBFBD> save_compiler<00>TBgen_prompt_script<70> circuit_type<70> scenario_dict<63> scenario_num<75>checklist_worked<65> correct_max<61>TBcheck_correct_max<61>itermax<61>iter_max<61> discrim_mode<64> correct_mode<64>rtl_compens_en<65>rtl_compens_max_iter<65>cga<67>enabledrc<00> TBgen_manager<65>TBgen<65>TBsim<69>TBeval<61> stage_now<6F>autoline_iter_now<6F> TB_code_v<5F>
TB_code_py<EFBFBD> next_action<6F>incomplete_running<6E> full_pass<73> TB_correctedr&<00>run_info_short<72>TBcheck_rtl_newly_gen_num<75> op_record<72>funccheck_op_record<72>funccheck_iters<72> cga_coverage<67> result_dictr<00> new_sectionr<00> set_temp_log)r)rSrs rr*zAutoLine_Task.__init__NsB<00><00><1C><04> <0B>"<22><04><0E><1E>+<2B>+<2B>/<2F>/<2F>/<2F>/<2F><04><0F> <20><19>+<2B><04> <0C> <20><1D>/<2F><04> <0C> )<29>-<2D> 8<><04><1D><1F><08>)<29><04> <0B>#<23>M<EFBFBD>2<><04><0F>"<22><1D><1D>{<7B>D<EFBFBD>9<><04><0E>$<24>=<3D>=<3D><19>D<EFBFBD>9<><04><18>$<24>=<3D>=<3D><1C>t<EFBFBD><<3C><04><18> <20>K<EFBFBD>K<EFBFBD>O<EFBFBD>O<EFBFBD>8<>8<><04><19><1B>{<7B>{<7B>+<2B>+<2B>3<>3<>;<3B>;<3B><04> <0C><1B><07><07> <0C> <0C>T<EFBFBD>[<5B>[<5B>%5<>%5<>%:<3A>%:<3A>D<EFBFBD>L<EFBFBD>L<EFBFBD>I<><04> <0A><1F>=<3D>=<3D><04><18>
<EFBFBD> <0B> <0B>D<EFBFBD>M<EFBFBD>M<EFBFBD>D<EFBFBD>1<><1A><07><07> <0C> <0C>T<EFBFBD>]<5D>]<5D>G<EFBFBD><<3C><04> <0A>
<EFBFBD> <0C> <0C>T<EFBFBD>_<EFBFBD>_<EFBFBD>d<EFBFBD>m<EFBFBD>m<EFBFBD>4<>!<21>?<3F>?<3F>6<>6<><04><18>!'<27><1F><1F>!C<>!C<><04><1E> <20>/<2F>/<2F>9<>9<><04><0F> <20>K<EFBFBD>K<EFBFBD>0<>0<>=<3D>=<3D><04><19>#)<29>?<3F>?<3F>#?<3F>#?<3F><04> <20> <20><04><19>!<21><04><1A> <20><04><19> $<24><04><1D>#'<27>;<3B>;<3B>#7<>#7<>#?<3F>#?<3F>#K<>#K<><04> <20><1E><0F><0F>/<2F>/<2F><04> <0A>"<22>O<EFBFBD>O<EFBFBD>3<>3<>@<40>@<40><04><19>"<22>O<EFBFBD>O<EFBFBD>3<>3<>@<40>@<40><04><19>$<24>o<EFBFBD>o<EFBFBD>5<>5<>D<>D<><04><1B>$*<2A>O<EFBFBD>O<EFBFBD>$;<3B>$;<3B>$P<>$P<><04>!<21>!<21>?<3F>?<3F>.<2E>.<2E>6<>6<><04><18>'+<2B><04><1A> $<24><04>
<EFBFBD>#<23><04>
<EFBFBD>#'<27><04> <0C>!%<25><04> <0B>)<29><04><0E>!"<22><04><1E><1D><04><0E><1E><04><0F><1F><04><18>"&<26><04><1F><1E><04><0E>!<21><04><19><1A><04> <0A> <20><04><1B>)*<2A><04>&<26><1B><04><0E>#%<25><04> <20>!<21><04><1C><1F><04><19><1C>|<7C>|<7C><1B><19><1B><1F>+<2B>+<2B> 
<EFBFBD><04><18> <14><1F><1F>!<21><0E><1B><1B>rc <00><><00>t|j<00>5|j<00>|j<00>|jr|j <00>|j |jd< |jjj}tjj|<01>stj|d<03><04>t!j"|jtjj%||j<00>d<05><02><00>ddd<06>|j&S#t$rd}Y<00><>wxYw#1swY|j&SxYw)zK
The main function of running the autoline for one problem
r`<00>resultsTr\z.jsonN)rr,<00>
run_stages<EFBFBD>runinfo_updatery<00> save_TB_codesr<73>r<>rr<00> result_path<74>AttributeErrorr r!<00>existsrqrsrr"r&)r)<00>result_save_paths rr5zAutoLine_Task.run<75>s<00><00><1D>T<EFBFBD>\<5C>\<5C> *<2A> m<01> <10>O<EFBFBD>O<EFBFBD> <1D> <10> <1F> <1F> !<21><13><EFBFBD><EFBFBD><14>"<22>"<22>$<24>(,<2C><0E><0E>D<EFBFBD> <1C> <1C>W<EFBFBD> %<25> -<2D>#'<27>;<3B>;<3B>#7<>#7<>#C<>#C<> <20> <16>7<EFBFBD>7<EFBFBD>><3E>><3E>"2<>3<><12> <0B> <0B>,<2C>t<EFBFBD><<3C> <0E> "<22> "<22>4<EFBFBD>#3<>#3<>R<EFBFBD>W<EFBFBD>W<EFBFBD>\<5C>\<5C>BR<42>W[<5B>Wc<57>Wc<57>Vd<56>di<64>Tj<54>5k<35> l<># m<01>&<14>}<7D>}<7D><1C><>"<22> -<2D>#,<2C> <20> -<2D><> m<01>&<14>}<7D>}<7D><1C>s1<00>AD3<03>- D"<02> BD3<03>" D0<05>-D3<03>/D0<05>0D3<03>3EN<>subdirc<00>^<00>|jjd<01>|<01>*tjj |j
|<01>n |j
}d|_t|j|j||j<00>|_ |jj|_ td<02>5|j<00>ddd<00>|jjd<03>|_|jjd<04>|_|jjd<05>|_|jjd<06>|_|jjd<07>|_|jjd<08>|_d |_|j/<00>y#1swY<00><>xYw)
N<EFBFBD>genr<6E>r<>r<>r}r~r|rT)r<>r6r r!r"ror<>r rSr{rr<><00>workflowr<77>r<00>get_attrr<72>r<>r}r~r|rr<><00>
_blank_log<EFBFBD>r)r<>rps r<00> run_TBgenzAutoLine_Task.run_TBgen<65>s:<00><00> <0C><0E><0E><1D><1D>e<EFBFBD>$<24>=C<>=O<>b<EFBFBD>g<EFBFBD>g<EFBFBD>l<EFBFBD>l<EFBFBD>4<EFBFBD>=<3D>=<3D>&<26>9<>UY<55>Ub<55>Ub<55> <0B> <20><04><0E>&<26>t<EFBFBD>~<7E>~<7E>t<EFBFBD>7O<37>7O<37>Q\<5C>^b<>^i<>^i<>j<><04><1A><19>'<27>'<27>0<>0<><04>
<EFBFBD> <1C>W<EFBFBD> %<25> <19> <10>J<EFBFBD>J<EFBFBD>L<EFBFBD> <19><1D><1A><1A>,<2C>,<2C>[<5B>9<><04><0E><1E>*<2A>*<2A>-<2D>-<2D>l<EFBFBD>;<3B><04><0F>!<21>Z<EFBFBD>Z<EFBFBD>0<>0<><1F>A<><04><1A> <20>J<EFBFBD>J<EFBFBD>/<2F>/<2F><0E>?<3F><04><19> <20>J<EFBFBD>J<EFBFBD>/<2F>/<2F><0E>?<3F><04><19> $<24>
<EFBFBD>
<EFBFBD> 3<> 3<>4F<34> G<><04><1D>"&<26><04><1F> <0C><0F><0F><19> <19> <19>s <00>2F#<03>#F,c<00><00>|jjd<01>|<01>*tjj |j
|<01>n |j
}d|_t|j|jj|j||j|j<00>|_ |jj<00>|jj|_|jj"|_|j'<00>y)N<>syncheckr<6B>)r<>r6r r!r"ror<>r
r<><00>TB_coderWr,rr<>r5<00> TB_code_nowr<77><00> PY_code_nowr<77>r<>r<>s r<00> run_TBsimzAutoLine_Task.run_TBsim<69>s<><00><00> <0C><0E><0E><1D><1D>j<EFBFBD>)<29>=C<>=O<>b<EFBFBD>g<EFBFBD>g<EFBFBD>l<EFBFBD>l<EFBFBD>4<EFBFBD>=<3D>=<3D>&<26>9<>UY<55>Ub<55>Ub<55> <0B> <20><04><0E><1E> <10>J<EFBFBD>J<EFBFBD> <10>J<EFBFBD>J<EFBFBD> <1E> <1E> <10>K<EFBFBD>K<EFBFBD> <17> <10>L<EFBFBD>L<EFBFBD> <10>K<EFBFBD>K<EFBFBD> 
<EFBFBD><04>
<EFBFBD> <0A>
<EFBFBD>
<EFBFBD><0E><0E><18><1D><1A><1A>/<2F>/<2F><04><0E><1E>*<2A>*<2A>0<>0<><04><0F> <0C><0F><0F>rc<00><><00>|jjd<01>|<01>*tjj |j
|<01>n |j
}d|_tdid|<02>d|j<00>d|j<00>d|j<00>d|j<00>d|j<00>d |j<00>d
|j<00>d |j<00>d |j <00>d |j"<00>d|j$<00>d|j&<00>d|j(<00>d|j*<00>d|j,<00>d|j.<00>d|j0<00>d|j2<00><01>|_|j4j6|_ |j4j9<00>|j4j|_ |j4j|_ |j4j:|_|j>j|j4j<00>|j@j|j4jB<00>|xjD|j4jFz c_"|j4jH|_$|j2r;|j4jK<00>|jLd<|jLd|_ |jO<00>y)N<> funccheckrmror,rV<00> module_headerr<72>r<><00>rtl_listrnr~r<><00> runfiles_save<76>discriminator_mode<64>corrector_moder|r<>r<>rdrl<00> desc_improverQ)(r<>r6r r!r"ror<>r r,rfrWr<>r<>rkrnr~r<>rzr<>r<>r|r<>r<>rdrlrurmr<>r5<00> correctedr<64>r<>r<><00>iter_nowr<77><00>rtl_newly_gen_numr<6D><00>update_descriptionrSr<>r<>s r<00> run_TBcheckzAutoLine_Task.run_TBcheck<63>sg<00><00> <0C><0E><0E><1D><1D>k<EFBFBD>*<2A>=C<>=O<>b<EFBFBD>g<EFBFBD>g<EFBFBD>l<EFBFBD>l<EFBFBD>4<EFBFBD>=<3D>=<3D>&<26>9<>UY<55>Ub<55>Ub<55> <0B>"<22><04><0E>"<22>
<EFBFBD>"<22>
<EFBFBD><1A>l<EFBFBD>l<EFBFBD>
<EFBFBD><1F>/<2F>/<2F>
<EFBFBD>!<21>K<EFBFBD>K<EFBFBD> 
<EFBFBD>
<1D><0E><0E> 
<EFBFBD> <1E><1F><1F> 
<EFBFBD><1C>'<27>'<27>
<EFBFBD><1B>l<EFBFBD>l<EFBFBD>
<EFBFBD> <20>,<2C>,<2C>
<EFBFBD><1F>2<>2<>
<EFBFBD><1F>+<2B>+<2B>
<EFBFBD> $<24>0<>0<>
<EFBFBD> <20>,<2C>,<2C>
<EFBFBD><1E>*<2A>*<2A>
<EFBFBD> <20>.<2E>.<2E>
<EFBFBD> "&<26>!:<3A>!:<3A>!
<EFBFBD>"<1E><1F><1F>#
<EFBFBD>$ <20>,<2C>,<2C>%
<EFBFBD>&<1E>)<29>)<29>'
<EFBFBD><04> <0C>* <20><<3C><<3C>0<>0<><04><18> <0C> <0C> <0C><18><18><1A><1D><1C><1C>/<2F>/<2F><04><0E><1E>,<2C>,<2C>1<>1<><04><0F> <20>L<EFBFBD>L<EFBFBD>2<>2<><04><19> <0C> <20> <20>'<27>'<27><04> <0C> <0C>(><3E>(><3E>?<3F> <0C><1C><1C>#<23>#<23>D<EFBFBD>L<EFBFBD>L<EFBFBD>$9<>$9<>:<3A> <0C>&<26>&<26>$<24>,<2C>,<2C>*H<>*H<>H<>&<26><1F><<3C><<3C>3<>3<><04><18> <0F> <1B> <1B>,0<>L<EFBFBD>L<EFBFBD>,K<>,K<>,M<>D<EFBFBD>N<EFBFBD>N<EFBFBD>=<3D> )<29>$(<28>N<EFBFBD>N<EFBFBD>=<3D>$A<>D<EFBFBD> !<21> <0C><0F><0F>rc <00><<00>|jjd<01>|<01>*tjj |j
|<01>n |j
}d|_t|j||j|j|j|jd|jj|j|j <00><03>
|_ |j"j%<00>|j-<00>y#t'j(d<04>d|_Y<00>1xYw)N<>evalr<6C>)<08>TB_genrirg<00>DUT_mutant_list<73>DUT_gptgen_list<73> pychecker_en<65>pychecker_coder<65>z>error when running TBeval, the autoline for this task stopped.T)r<>r6r r!r"ror<>r r,r<>rirgrjr<>r<>r<>rzr<>r5r<00>failedr<64>r<>r<>s r<00>
run_TBevalzAutoLine_Task.run_TBevals<><00><00> <0C><0E><0E><1D><1D>f<EFBFBD>%<25>=C<>=O<>b<EFBFBD>g<EFBFBD>g<EFBFBD>l<EFBFBD>l<EFBFBD>4<EFBFBD>=<3D>=<3D>&<26>9<>UY<55>Ub<55>Ub<55> <0B>!<21><04><0E> <20> <10>L<EFBFBD>L<EFBFBD> <17><17>><3E>><3E><1A>n<EFBFBD>n<EFBFBD><1B><EFBFBD><EFBFBD> <20>,<2C>,<2C> <20><1D><1A><1A>0<>0<><1F>?<3F>?<3F><1E>+<2B>+<2B> 
<EFBFBD><04> <0B> +<2B> <10>K<EFBFBD>K<EFBFBD>O<EFBFBD>O<EFBFBD> <1D> <0A><0F><0F><19><> +<2B> <12>M<EFBFBD>M<EFBFBD>Z<> [<5B>&*<2A>D<EFBFBD> #<23>s <00>C;<00>;Dc
<00>N<00>d|_|jj|<03>t|j|j
|j |j|j|j||r*|jjjjnd<02><03>}|j<00>\}}||_||_||jd<t j"j%|jd<05>}t'j(||<07>t+j,d|<07><00><02>y)u.
Coverage-Guided Agent 阶段
<20>TBCGAr)ror,rW<00>DUT_coder<65>r<00> work_subdir<69>max_iterrb<00>
final_TB.vzSaved optimized TB to: N)r<>r<>r6rror,rWrgr<>rrr<>r<>r5r<>r<>r r!r"rsrtrr2)r)r<><00>optimize<7A>op_namer<65><00>final_tb<74> final_score<72> final_tb_paths r<00> run_TBCGAzAutoLine_Task.run_TBCGAs<><00><00>!<21><04><0E> <0C><0E><0E><1D><1D>g<EFBFBD>&<26><17><19>]<5D>]<5D><18>L<EFBFBD>L<EFBFBD><17>;<3B>;<3B><19>_<EFBFBD>_<EFBFBD><18>N<EFBFBD>N<EFBFBD><17>;<3B>;<3B>#<23>;C<>d<EFBFBD>k<EFBFBD>k<EFBFBD>*<2A>*<2A>.<2E>.<2E>7<>7<><11> 
<EFBFBD><03>!$<24><07><07> <09><1D><08>+<2B>(<28><04><19>!<21><04><0E>'2<><04><18><18><1A>$<24><1B><07><07> <0C> <0C>T<EFBFBD>]<5D>]<5D>L<EFBFBD>A<> <0A>
<EFBFBD> <0C> <0C>X<EFBFBD>}<7D>-<2D><0E> <0B> <0B>-<2D>m<EFBFBD>_<EFBFBD>=<3D>>rc
<00>l<00>td<01><02>5|_|js|j<00>n |j<00>d|_ddd<00>y#t$rM}d|_t jd|j<00>dt|<01><00><01><04>|jr|<01>Yd}~<01>ad}~wwxYw#1swYyxYw)NF)<01>print_enT<6E>error when running <20>5, the autoline for this task stopped. error message: )
r<00> running_timerw<00>run_stages_core<72> Exceptionr<6E>r<00>errorr<72><00>str)r)<00>es rr<>zAutoLine_Task.run_stages9s<><00><00> <12>E<EFBFBD> "<22> 0<>d<EFBFBD>&7<><17>)<29>)<29><14>$<24>$<24>&<26> <20><18>(<28>(<28>*<2A>+0<><04>'<27> 0<> 0<><30> !<21> <20>.2<EFBFBD>D<EFBFBD>+<2B><1A>L<EFBFBD>L<EFBFBD>qu<71>q<71>q<71>BE<02>FG<02>BH<02>"I<02>J<02><1B>-<2D>-<2D><1F><07>.<2E><> <20><> 0<> 0<>s5<00>#B*<03>A<02>B*<03> B'<05>AB"<05>B*<03>"B'<05>'B*<03>*B3c
<00>&<00>|jjjxdk(r|j<00>yxdk(r"|j<00>|j <00>ydk(r< |jd<04>|j d<05>|j d<06>d|_y t|j<00>D]g}||_ |j|d z<00>d <0C><02>|j |d z<00>d <0A><02>|j|d z<00>d<0E><02>|j(xdk(rndk(s<01>h<EFBFBD>i|j(dk(r=d|_ |j*r|j-ddd<18><19>n|j-ddd<1B><19> |j |jd z<00>d<1F><02>y#t$r?}d|_tjd |j<00>d
t|<01><00><01><04>Yd}~yd}~wwxYw#t$r<>}t|<01>}tjd|j<00>d|d z<00>d|<03><00><06>tj d<12>t#j$d<13>t'|jjdd<07>r|<01>d|_d|_Yd}~<01><01><>d}~wwxYw#t$r<}tjd|<01>d<1D><03>t|<01>|j.d<Yd}~<01><01>Vd}~wwxYw#t$r?}d|_tjd |j<00>d
t|<01><00><01><04>Yd}~yd}~wwxYw) Nr<4E><00>TBgensimr<00>1_TBgen<65>2_TBsim<69>3_TBevalFTr<54>r<>r.<00>_1_TBgen<65>_2_TBsim<69>
_3_TBcheckzError when running z, iter: z . Message: uL⚠️ Pipeline interrupted. Cooling down for 15s to avoid API Rate Limit...<2E>rv<00>rebootra<00>CGAr<41>)r<>r<>r<><00> CGA_baseline<6E> coverage_evalzCGA Stage Failed: z. Fallback to original TB.r<><00> _4_TBeval)rrr'r<>r<>r<>r<>r<>rr<>r<>r<><00>ranger<65>r<>r<><00>warning<6E>time<6D>sleep<65>getattrr<72>rcr<>r<>)r)r<><00>i<>err_msgs rr<>zAutoLine_Task.run_stages_coreHs<><00><00><12>k<EFBFBD>k<EFBFBD>"<22>"<22>*<2A>*<2A><18><14><0E><0E> <20><1B><14><0E><0E> <20><14><0E><0E> <20><1F>4<><18>N<EFBFBD>N<EFBFBD>9<EFBFBD>-<2D><18>N<EFBFBD>N<EFBFBD>9<EFBFBD>-<2D><18>O<EFBFBD>O<EFBFBD>J<EFBFBD>/<2F>
/4<>D<EFBFBD>+<2B><12><1E>t<EFBFBD>}<7D>}<7D>-<2D>%%<25>A<EFBFBD>-.<2E>D<EFBFBD>*<2A>!<21><1C><0E><0E>!<21>A<EFBFBD>#<23><15>h<EFBFBD>'7<>8<><1C><0E><0E>!<21>A<EFBFBD>#<23><15>h<EFBFBD>'7<>8<><1C>(<28>(<28>A<EFBFBD>a<EFBFBD>C<EFBFBD>5<EFBFBD>
<EFBFBD>);<3B><<3C>8<1F>*<2A>*<2A>#<23>!<21>%<25>$<24>K%%<25>P<18>#<23>#<23>v<EFBFBD>-<2D>.3<EFBFBD>D<EFBFBD>+<2B>;<3B><1F>+<2B>+<2B> <20>N<EFBFBD>N<EFBFBD>u<EFBFBD>t<EFBFBD>UZ<55>N<EFBFBD>[<5B> <20>N<EFBFBD>N<EFBFBD>~<7E>PU<50>_n<5F>N<EFBFBD>o<> J<02><18>O<EFBFBD>O<EFBFBD>t<EFBFBD>'=<3D>'=<3D>a<EFBFBD>'?<3F>&@<40> <09>$J<>K<><4B>y!<21>J<02>.2<EFBFBD>D<EFBFBD>+<2B><1A>L<EFBFBD>L<EFBFBD>qu<71>q<71>q<71>BE<02>FG<02>BH<02>"I<02>J<02>J<02><>J<02><>%<25>!<21> #&<26>a<EFBFBD>&<26><07><1E> <0C> <0C>':<3A>4<EFBFBD>><3E>><3E>:J<>(<28>ST<53>UV<55>SV<53>RW<52>Wb<57>cj<63>bk<62>%l<>m<>
<1F><0E><0E>'u<>v<><1C>
<EFBFBD>
<EFBFBD>2<EFBFBD><0E>#<23>4<EFBFBD>;<3B>;<3B>#7<>#7<>9M<39>u<EFBFBD>U<>"#<23>G<EFBFBD>,4<><04>(<28>26<32><04>/<2F> <20><>/!<21><>T%<25>;<3B><1E> <0C> <0C>'9<>!<21><13><V<>%W<>X<>47<34><01>F<EFBFBD><04>(<28>(<28><17>1<><31>;<3B><>!<21>J<02>.2<EFBFBD>D<EFBFBD>+<2B><1A>L<EFBFBD>L<EFBFBD>qu<71>q<71>q<71>BE<02>FG<02>BH<02>"I<02>J<02>J<02><>J<02>sb<00>#3F <00>?AG<02>55J<00>+!K<00> G<03>5G<03>G<03> I=<05>!BI8<05>8I=<05> K<03> 1K<03>K<03> L<03>5L <03> Lc <00><><00>|j|jt|jjd<01>t
j t
jt
j|j|j|j|j|jd<02> |_|j<00>K|j |jd<|j"|jd<|j$|jd<|j&<00><>|jj)|j&j*|j&j,|j&j.|j&j0d<06><04>|j&j2r[|jj)|j&j4|j&j6|j&j8d<07><03>|j:<00>=|jj)|j<|j>|j@d<08><03>|jB<00><02><>|jBjDrT|jj)d |jBjFi<01>|jBjF|jHd <|jBjJr<>|jj)|jBjLd
tO|jBjP<00>tO|jRd <00>fz|jBjTd <0C><03>|jHj)|jBjLd
tO|jBjP<00>tO|jRd <00>fz|jBjTd <0C><03>|jBjVr<>|jj)|jBjXd
tO|jBjZ<00>tO|jRd <00>fz|jBj\d<0E><03>|jHj)|jBjXd
tO|jBjZ<00>tO|jRd <00>fz|jBj\d<0E><03>|js<>|j&j,xr.|jBjFxr|jBjL|_/|jj)d|j^i<01>|j^|jHd<|j^|jHd<nd|jHd<d|jHd<|j`|jHd<|j|jHd<tc|jtdjfji|jjd<14><00>d|jjm<00>vrd|jdz}n<>d |jjm<00>vr|jd rd}n^d|jjm<00>vr|jdrd}n0d|jjm<00>vr|jdsd}nd}|jjodd<00>||jjodd<00>|jjodd<00>|jjodd<00>|jjod d<00>d!<21>|_8tc|jptdjfji|jjd"<22><00>tsjt<00>}tdjfji|jjd#<23>}tejvtdjfjy|<03>d$<24>%<25>t{|d&<26>5}|j}|<02>ddd<00>|jS#1swY|jSxYw)'N<>) r,rUr<><00> prompt_tokens<6E>completion_tokens<6E>
token_costzERROR(incomplete)r<><00> reboot_timesr<73>rbr|rr~)<04>
Eval0_pass<EFBFBD> Eval0_iv_pass<73> debug_iter_iv<69>iv_runing_time)<03> Eval0_py_pass<73> debug_iter_py<70>py_runing_time)r<><00>TBcheck_oprecord<72>rtl_num_newly_gen<65>
Eval1_passz%d/%drZ)<03>
Eval2_pass<EFBFBD> Eval2_ratio<69>Eval2_failed_mutant_idxes<65>
gptgen_RTL)<03> Eval2b_pass<73> Eval2b_ratio<69>Eval2b_failed_mutant_idxesr<73>raFr`rbz run_info.jsonrzEval2 - zEval1 - passedr<64>zEval1 - failedzEval0 - failedzEval0 - not foundr,r<>r<>r<>r<>)r,<00> eval_progressr<73>r<>r<><00>costzrun_info_short.jsonz task_log.logTr\<00>w)?r,re<00>roundr<64><00>intervalr<00>tokens_in_section<6F>tokens_out_section<6F> cost_sectionr<6E>r<>r<>r<>r<>r&r<>r|rr~r<><00>updater<65><00>sim_pass<73>debug_iter_iv_nowrr<><00>py_pass<73>debug_iter_py_nowrrmr<>r<>r<>r<><00> Eval1_existrr<><00> Eval2_existr<00>len<65>Eval2_passed_mutant_idxrS<00>Eval2_failed_mutant_idx<64> Eval2b_existr <00>Eval2b_passed_mutant_idx<64>Eval2b_failed_mutant_idxr<78>r<>rr r!r"ro<00>keysrhr<>r<00>reset_temp_logrq<00>dirname<6D>open<65>write)r)r<00> running_log<6F> tasklog_path<74>fs rr<>zAutoLine_Task.runinfo_update<74>sF<00><00><1C>|<7C>|<7C><1F><<3C><<3C><19>$<24>+<2B>+<2B>4<>4<>a<EFBFBD>8<>(<28>:<3A>:<3A>!,<2C>!?<3F>!?<3F>%<25>2<>2<>!%<25>!8<>!8<><1D><1E><1E> <20>2<>2<><1C> <0A> <0A><1D>)<29>)<29>
<EFBFBD><04> <0A>$ <10>:<3A>:<3A> !<21>-1<>,=<3D>,=<3D>D<EFBFBD>M<EFBFBD>M<EFBFBD>.<2E> )<29>04<30>0E<30>0E<30>D<EFBFBD>M<EFBFBD>M<EFBFBD>,<2C> -<2D>,0<>,=<3D>,=<3D>D<EFBFBD>M<EFBFBD>M<EFBFBD>.<2E> )<29> <0F>:<3A>:<3A> !<21> <11>M<EFBFBD>M<EFBFBD> <20> <20>"<22>j<EFBFBD>j<EFBFBD>3<>3<>!%<25><1A><1A>!4<>!4<>!%<25><1A><1A>!=<3D>!=<3D>"&<26>*<2A>*<2A>";<3B>";<3B> "<0E> <0F> <14>z<EFBFBD>z<EFBFBD>&<26>&<26><14> <0A> <0A>$<24>$<24>%)<29>Z<EFBFBD>Z<EFBFBD>%7<>%7<>%)<29>Z<EFBFBD>Z<EFBFBD>%A<>%A<>&*<2A>j<EFBFBD>j<EFBFBD>&?<3F>&?<3F>&<12><13> <10><<3C><<3C> #<23> <10>M<EFBFBD>M<EFBFBD> <20> <20> $<24> 1<> 1<>$(<28>$<<3C>$<<3C>%)<29>%C<>%C<>"<0E> <0F> <10>;<3B>;<3B> "<22><13>{<7B>{<7B>&<26>&<26><14> <0A> <0A>$<24>$<24>l<EFBFBD>D<EFBFBD>K<EFBFBD>K<EFBFBD>4J<34>4J<34>%K<>L<>15<31><1B><1B>1G<31>1G<31><04> <20> <20><1C>.<2E><13>{<7B>{<7B>&<26>&<26><14> <0A> <0A>$<24>$<24>"&<26>+<2B>+<2B>"8<>"8<>#*<2A>C<EFBFBD><04> <0B> <0B>0S<30>0S<30>,T<>VY<56>Z^<5E>Zh<5A>Zh<5A>ir<69>Zs<5A>Vt<56>+u<>#u<>15<31><1B><1B>1T<31>1T<31>&<12><13>
<15> <20> <20>'<27>'<27>"&<26>+<2B>+<2B>"8<>"8<>#*<2A>C<EFBFBD><04> <0B> <0B>0S<30>0S<30>,T<>VY<56>Z^<5E>Zh<5A>Zh<5A>ir<69>Zs<5A>Vt<56>+u<>#u<>15<31><1B><1B>1T<31>1T<31>)<12><13>
<14>{<7B>{<7B>'<27>'<27><14> <0A> <0A>$<24>$<24>#'<27>;<3B>;<3B>#:<3A>#:<3A>$+<2B>S<EFBFBD><14><1B><1B>1U<31>1U<31>-V<>X[<5B>\`<60>\j<>\j<>kw<6B>\x<>Xy<58>,z<>$z<>26<32>+<2B>+<2B>2V<32>2V<32>&<12><13>
<15> <20> <20>'<27>'<27>#'<27>;<3B>;<3B>#:<3A>#:<3A>$+<2B>S<EFBFBD><14><1B><1B>1U<31>1U<31>-V<>X[<5B>\`<60>\j<>\j<>kw<6B>\x<>Xy<58>,z<>$z<>26<32>+<2B>+<2B>2V<32>2V<32>)<12><13> <14>&<26>&<26>!<21>Z<EFBFBD>Z<EFBFBD>0<>0<>f<>T<EFBFBD>[<5B>[<5B>5K<35>5K<35>f<>PT<50>P[<5B>P[<5B>Pf<50>Pf<50>D<EFBFBD>N<EFBFBD> <10>M<EFBFBD>M<EFBFBD> <20> <20><1B>T<EFBFBD>^<5E>^<5E>"<0E> <0F>-1<>N<EFBFBD>N<EFBFBD>D<EFBFBD> <1C> <1C>[<5B> )<29>'+<2B>~<7E>~<7E>D<EFBFBD> <1C> <1C>V<EFBFBD> $<24>,1<>D<EFBFBD> <1C> <1C>[<5B> )<29>',<2C>D<EFBFBD> <1C> <1C>V<EFBFBD> $<24>$(<28>N<EFBFBD>N<EFBFBD><04><18><18><17>!<21>'+<2B>'8<>'8<><04><18><18><1A>$<24><1B>D<EFBFBD>M<EFBFBD>M<EFBFBD>2<EFBFBD>7<EFBFBD>7<EFBFBD><<3C><<3C><04> <0A> <0A><EFBFBD>+W<>X<> <19>D<EFBFBD>M<EFBFBD>M<EFBFBD>.<2E>.<2E>0<> 0<>&<26><14><1D><1D>}<7D>)E<>E<>M<EFBFBD> <19>T<EFBFBD>]<5D>]<5D>/<2F>/<2F>1<> 1<>d<EFBFBD>m<EFBFBD>m<EFBFBD>L<EFBFBD>6Q<36>,<2C>M<EFBFBD> <19>T<EFBFBD>]<5D>]<5D>/<2F>/<2F>1<> 1<>d<EFBFBD>m<EFBFBD>m<EFBFBD>L<EFBFBD>6Q<36>,<2C>M<EFBFBD> <19>T<EFBFBD>]<5D>]<5D>/<2F>/<2F>1<> 1<>$<24>-<2D>-<2D> <0C>:U<>,<2C>M<EFBFBD>/<2F>M<EFBFBD><1B>}<7D>}<7D>(<28>(<28><19>D<EFBFBD>9<>*<2A> <20>M<EFBFBD>M<EFBFBD>-<2D>-<2D>n<EFBFBD>d<EFBFBD>C<> <20>M<EFBFBD>M<EFBFBD>-<2D>-<2D>n<EFBFBD>d<EFBFBD>C<><18>M<EFBFBD>M<EFBFBD>%<25>%<25>f<EFBFBD>d<EFBFBD>3<><18>M<EFBFBD>M<EFBFBD>%<25>%<25>l<EFBFBD>D<EFBFBD>9<> 
<EFBFBD><04><1B> <1C>D<EFBFBD>/<2F>/<2F><12><17><17><1C><1C>d<EFBFBD>m<EFBFBD>m<EFBFBD>Mb<4D>1c<31>d<><1D>+<2B>+<2B>-<2D> <0B><19>w<EFBFBD>w<EFBFBD>|<7C>|<7C>D<EFBFBD>M<EFBFBD>M<EFBFBD>><3E>B<> <0C>
<EFBFBD> <0B> <0B>B<EFBFBD>G<EFBFBD>G<EFBFBD>O<EFBFBD>O<EFBFBD>L<EFBFBD>1<>D<EFBFBD>A<> <11>,<2C><03> $<24> !<21><01> <0A>G<EFBFBD>G<EFBFBD>K<EFBFBD> <20> !<21><14>}<7D>}<7D><1C> !<21><14>}<7D>}<7D><1C>s <00>`:<03>:ac<00><><00>|j}tjt|jt
<00>r |jndt jj|d<02><00>tjt|jt
<00>r |jndt jj|d<04><00>y)Nz // TB code (Verilog) unavailabler<65>z## TB code (Python) unavailablez final_TB.py)
rorsrt<00>
isinstancer<EFBFBD>r<>r r!r"r<>)r)<00>save_dirs rr<>zAutoLine_Task.save_TB_codess<><00><00><17>=<3D>=<3D><08>
<EFBFBD> <0C> <0C>z<EFBFBD>$<24>.<2E>.<2E>#<23>'F<>T<EFBFBD>^<5E>^<5E>Ln<4C>pr<70>pw<70>pw<70>p|<7C>p|<7C>~F<02>HT<02>qU<02> V<02>
<EFBFBD> <0C> <0C>
<EFBFBD>4<EFBFBD>?<3F>?<3F>C<EFBFBD>(H<>T<EFBFBD>_<EFBFBD>_<EFBFBD>No<4E>qs<71>qx<71>qx<71>q}<7D>q}<7D>G<02>IV<02>rW<02> Xrc<00>.<00>tjd<01>y)Nr-)rr2rQrrr<>zAutoLine_Task._blank_logs <00><00><0E> <0B> <0B>B<EFBFBD>rc<00>&<00>|j|i|<02><01>Srr=r>s rrAzAutoLine_Task.__call__rBrr)r<>Tr<54>)rMrNrO<00>dictrr*r5r<>r<>r<>r<>r<>r<>r<>r<>r<>r<><00> staticmethodr<64>rArQrrr4r4Ms<><00><00>N<1E><14>N<1E>f<EFBFBD>N<1E>`<1D>2<1A>s<EFBFBD><1A>$<1A>s<EFBFBD><1A>"%<1A><13>%<1A>N<1A><03><1A>0?<3F>@ 0<>LJ<02>\w<1D>rX<02>
<12><18><12><18>)rr4)"rPr <00>analyzerG<00> loader_saverrsr<>rrrr<00> data.probsetrrr<00> utils.utilsr<00>autoline.TB1_genr <00>autoline.TB2_syncheckr
<00>autoline.TB3_funccheckr <00>autoline.TB4_evalr <00>prompt_scriptsr <00>LLM_callr<00>autoline.TB_cgarrrr4rQrr<00><module>r=sZ<00><01><04> 
<EFBFBD><14><19> <0B><19>=<3D>'<27>-<2D><1D>&<26>+<2B>.<2E>(<28>%<25> <20>&<26><0F> &'<27>&'<27>TL)<29>L)r