Skip to Content

asic verification

Posted on  by  from the site Ninja Verification
This may seem obvious, but don’t use git push like CVS commit. Repositories should be accepting commits by pulling them, not pushing them. CVS commit may be your integration strategy in a simple world without branches, but git push shouldn’t … Continue reading →
Martin d'Anjou
Posted on  by  from the site Ninja Verification
I recently purchased Pro Git at my local Chapters bookstore. After reading it, I discovered I could get it for free on-line, but that did not make me feel bad, on the contrary! In a week, I had taken it everywhere, and showed it to half a dozen people. The reason I blog about this book [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
In a previous article, I discussed a hypothetical Platform LSF command, bwait, which would waits for LSF jobs to complete before returning. Another command that I would like to see in the Platform LSF suite of commands is a command to track parent-child relationship between jobs. Linux has a pstree command, LSF could have a [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
In the spirit of the POSIX wait command, Platform LSF should have a bwait command. It should work in a way similar to this: $ bwait 7372 7378 7123 7812 Passed: 7812 Failed: 7372 Failed: 7123 Passed: 7378 $ echo $? 1 Let’s explain how this hypothetical command would work. As its name suggests, it is a command that waits for LSF jobs [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
In software design, a continuous integration system is a system for compiling and testing code on a continuous basis. When a build fails, the code is rejected and the owner notified. When the code is good (compiles okay and sanity tests pass), the code is accepted and is made available for distributing to the development [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
A way to solve this problem, which I presented in a previous post, was found with the help from the gurus on #bash. The easy way to make this work is to save the arguments to a file, one per line, and read them back at the other end. Using bash syntax for arrays "${a[@]}” [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
Wrapping ssh inside a script and passing it arbitrary commands is hard. What I am trying to do here is to come up with a generic way to invoke an ssh-wrapper, have it record the $(pwd), perform an ssh to a remote host, and at the remote host, reposition inside $(pwd), and run an arbitrary, [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
Environment modules is a nice software environment that lets you switch verilog simulator version very easily without having to edit your environment (.cshrc or other). But it seems to have some drawbacks. One of which is that is does not return proper exit status when it fails, making it hard to write scripts that fail [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
If you use GNU Make in your verification environment, maybe you have dreamed of typing make -j 120. It turns out it is possible, and it is a very interesting use of the GNU Make SHELL variable. You know that make -j N causes GNU make to spawn the build of N prerequisites in parallel. [...]
Martin d'Anjou
Posted on  by  from the site Ninja Verification
You run a tool for hours, save its output to a logfile, then parse the log for errors only to realize that there was a critical message in the first few minutes of the run. What a waste of time. You can instead process stdout of a program on the fly. Using a unix pipe and [...]
Martin d'Anjou
Syndicate content