UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Adventurer
Adventurer
2,214 Views
Registered: ‎07-24-2016

Vivado: not enough memory

Greetings,

 

I am using a .tcl script that triggers an ILA, and then calls a unix shell script that processes the .csv file that the .tcl script has written. This happens periodically, and I have created an infinite loop in the .tcl script, in order to trigger periodically and get the data I want from the .csv file. 

 

However, as the script runs, the memory consumption of Vivado (2017.1) is rising continuously, and when it reaches ~85% of the total system memory, I get this from Vivado: couldn't fork child process: not enough memory while executing "exec /bin/csh -c $script_location"

 

Is there any workaround? Can I write the script in a different way so that I don't have to restart Vivado and the script every 15 minutes?

 

.tcl script:

 

 

set numberOfFiles 3;
set timeout1      100;
set timeout2      10000;
set targetDirectory /home/test
set script_location /home/test/script.csh

    puts "---- BEGIN -----"

    #numberOfFiles does not change, hence infinite loop
    while {$numberOfFiles > 0} { 
        run_hw_ila [get_hw_ilas hw_ila_1] -trigger_now

        # writes the file
        write_hw_ila_data -csv_file -force $targetDirectory/data [upload_hw_ila_data hw_ila_1]

        for {set i 0} {$i < $timeout1} {incr i} {
            puts ".....timeout1...."
        }

        exec /bin/csh -c $script_location
        #executes script that processes the .csv file  

        for {set j 0} {$j < $timeout2} {incr j} {
            puts ".....timeout2...."
        }
    }

    puts "---- END -----"

 

Cheers

 

 

 

Tags (3)
0 Kudos