• About Jakob Engblom and this blog
Observations from Uppsala Computer Simulation, Virtual Platforms, Embedded Programming, Multicore and More (by Jakob Engblom)

Tag Archives: Software Tools

Adding to Schirrmeister’s Virtual Platform Myth Busting

2009 February 18 13:22 / 2 Comments / Jakob

opinionFrank Schirrmeister of Synopsys recently published a blog post called “Busting Virtual Platform Myths – Part 1: “Virtual Platforms are for application software only”. In it, he is refuting a claim by Eve that virtual platforms are for application-level software-development only, basically claiming that they are mostly for driver and OS development and citing some Synopsys-Virtio Innovator examples of such uses. In his view, most appication-software is being developed using host-compiled techniques.  I want to add to this refutal by adding that application-software is surely a very important — and large — use case for virtual platforms.

Read More →

Tweet
Posted in: embedded software, embedded systeme, ESL, multicore software, programming, virtual platforms / Tagged: clock-cycle models, cycle accuracy, Eve, Frank Schirrmeister, freescale, Grant Martin, Lauro Ritazzi, p4080, Simics, software tools, Synopsys

SiCS Multicore Days: The Debate Points

2008 September 19 22:14 / 7 Comments / Jakob

It is a week ago now, and sometimes it is good to let impressions sink in and get processed a bit before writing about an event like the SiCS Multicore Days. Overall, the event was serious fun, and I found the speakers very insightful and the panel discussion and audience questions added even more information.

Read More →

Tweet
Posted in: conferences, multicore computer architecture, multicore software, security / Tagged: conference, heterogeneous, homogeneous, memory bandwidth, multicore, panel discussion, SiCS Multicore days, software tools

Article on CPCI and ATCA Systems on Virtual System Development

2008 September 19 11:20 / Leave a Comment / Jakob

The article/editoral “Using virtual platforms to improve AdvancedTCA software development practice” is now up at CompactPCI and AdvancedTCA Systems, an online and paper journal for the rack-based market. It is about our experience at Virtutech in using virtual platforms to drive system and software development for “pretty large” target systems, even those based on standard hardware.

And really, there is no such thing as a standard embedded system. Even if you use a standard backplane and buy off-the-shelf boards and cards to put in it, the combination of cards and added mezzanine cards makes each system quite unique. If you could use completely standard PC hardware for your system with no custom additions or special IO units, the thing would in likelihood not actually be an embedded system.

Read More →

Tweet
Posted in: articles, embedded software, virtual platforms / Tagged: articles, embedded, simulation, software tools, virtualization

In Praise of Scripting: Something for Modeling as Well?

2008 August 3 22:40 / 5 Comments / Jakob

In the July 2008 issue of IEEE Computer, there is short article called “In Praise of Scripting: Real Programming Pragmatism“, by Ronald P. Loui, a professor at Washington University (WUSTL). The article deals with the issue of what is the appropriate first language to teach new CS (Computer Science) students, and considers that a “scripting” langauge like Python or Ruby might be way better than Java (no doubt about that I think).

The interesting material in the article is the background on WHY he thinks that this is the case. He points to the immense popularity and rise of scripting in much of computing land. In the past ten years, it is clear to him (and I would agree with this too mostly) that languages like Perl, PHP, Awk, Ruby, JavaScript, and Python have eclipse Java and C++ as the most interesting and important programming languages for many practical tasks. Especially for web applications, where Java seems to have a presence but noone would dream of using something as clunky and impractical as C.

What can this teach us for the purpose of simulation and the creation of models of computer system hardware for the purpose of simulation? Maybe a fair bit…

Read More →

Tweet
Posted in: computer simulation technology, programming, virtual platforms / Tagged: C/C++, code, DML, Domain-specific languages, programming languages, python, scripting languages, simulation, software tools

Building a Wooden Deck and Computer Simulation

2008 July 5 21:16 / 1 Comment / Jakob

I just spent the first week of Summer vacation practising the Swedish national sport of home renovation. It seems that everyone is doing that all the time nowadays – it might be that I have reached the age of family raising where that becomes important, or it might be that it is a general trend that more people spend more time and money renovating their homes. I think it is the second case.

Anyhow, what we set out to do this year was to replace (most of) the twenty-year-old wooden decking on the backside of our small row house with a new one. This was quite an adventure, as we discovered all kinds of interesting designs and problems with the old decking structure. Problems, which do reflect on the realities of computer programming and simulation.

Read More →

Tweet
Posted in: uncategorized / Tagged: simulation, software tools, virtualization

Simon Kågström, PhD

2008 May 10 09:08 / 1 Comment / Jakob

BTH logoYesterday, I had the honor of being the opponent at the PhD defense of Simon Kågström at Blekinge Tekniska Högskola (BTH, Blekinge University of Technology in English). His PhD thesis deals mainly with the multiprocessor port of an industrial in-house operating system, and a secondary theme was the design of the Cibyl C-programs-to-JVM translator. All of his papers are very well-written and a joy to read, and the engineering work behind it is very solid.

The most important data in the PhD thesis is really just how much work it is to do an SMP port of an OS kernel. And how hard it is to get performance up to good levels even with several years of work. Really emphasizes the point that hard work and perseverance and just lots of calendar time is what it takes to create a good SMP OS. That’s why Solaris and AIX are still years ahead of Linux in this respect — you just need to hit the snags, fix them, retest, and hit the next snag. It takes time to polish, basically.

So, if you have any interest in multiprocessor operating systems, Simon’s work is well-worth a read. Also check out his blog at http://simonkagstrom.livejournal.com/.  And by the way, he did pass.

Tweet
Posted in: Uncategorized / Tagged: appearances, blog commentary, books, multicore, research, software tools

ESC Silicon Valley 2008: Again

2008 April 8 11:14 / Leave a Comment / Jakob

This is just a repeat post of http://jakob.engbloms.se/archives/75 . I will present at the ESC Silicon Valley, next Thursday, at 08.30 in the morning. On how to use simulation and virtualization to better develop embedded software.

As a side note, a few years ago, I presented on efficient C programming for IAR Systems, guess that would have made Jack Ganssle happy: he complained about the lack of resource-constrained C programming skills in today’s university graduates in a column at Embedded.com recently. Apparently, the major market-driven education companies in the US have also dropped plain C programming from the course rosters… sounds like an opportunity or void to be filled by the embedded companies. Buy a C compiler, get a free efficient programming course.

Tweet
Posted in: Uncategorized / Tagged: appearances, conference, embedded, simulation, software tools, trade shows

Simulation is Better than Barr & Massa Says

2008 April 2 20:51 / Leave a Comment / Jakob

Cover of Programming Embedded Systems by Barr and MassaIn the book “Programming Embedded Systems — with C and GNU Development Tools“, authors Michael Barr and Anthony Massa make some statements on simulation that I just have to disagree with on principle. Read on for what. Note that overall this is a good book, I am not claiming that it is not. The Amazon reviews are pretty good, and having a foreword by Jack Ganssle is always a sign of quality. But I just have to correct them on one little fact…

Read More →

Tweet
Posted in: Uncategorized / Tagged: books, debugging, embedded, software tools

DATE 2008 Panel on Multicore Programming

2008 March 16 22:56 / Leave a Comment / Jakob

date2008I attended a DATE 2008 open exhibition panel discussion on multicore programming, organized by Gary Smith EDA. The panel was a few people short, and ended up with just Simon Davidmann of Imperas, Grant Martin of Tensilica, and Rudy Lauwereins of IMEC. A user representative from Ericsson was supposed to have been there but he never arrived. Overall, the panel was geared towards data-plane processing-type thinking, and a bit short on internal dissonance.

Read More →

Tweet
Posted in: Uncategorized / Tagged: appearances, computer architecture, conference, embedded, multicore, simulation, software tools, trade shows

ESC Silicon Valley 2008: Class 410

2008 February 8 15:47 / 2 Comments / Jakob

I am scheduled to talk at the ESC SV 2008 in the technical program. In 2006 and 2007 my topic was Multicore Debugging, but this year I have changed to Using Simulation Tools for Embedded Software Development. The date is April 17, the time 8.30 to 10.00, and the place the San Jose Convention Center.

See you there!

Tweet
Posted in: uncategorized / Tagged: appearances, conference, embedded, software tools, trade shows, virtualization

Wayne Wolf on “The Good News and the Bad News” of Embedded Multiprocessing

2007 December 27 11:42 / 1 Comment / Jakob

In a column called The Good News and the Bad News in IEEE Computer magazine (November 2007 issue), Prof. Wayne Wolf at Georgia Tech (and a regular columnist on embedded systems for Computer magazine) talks about the impact of multiprocessing systems (multicore, multichip) on embedded systems. In general, his tone is much more optimistic and upbeat than most pundits.

Read More →

Tweet
Posted in: Uncategorized / Tagged: computer architecture, embedded, multicore, software tools

SCDsource: Reality Check on Virtual Prototypes

2007 December 20 10:52 / Leave a Comment / Jakob

Bill Murray of the “New Media Outlet” SCDsource has published one of the best articles that I have seen on the use of software simulators and virtual prototypes in industry. The examples in the article run from low-level code run on very accurate simulators all the way to very fast virtual systems that are used instead of actual hardware to train NASA operators. The article covers the end-user perspective and is not particularly oriented towards a particular vendor. It offers some nice insights into the expected and unexpected benefits that various companies have obtained from using simulators of various kinds. As well as some glimpses into the underlying technologies they have chosen, developed, and adapted.

Highly recommended.

Tweet
Posted in: uncategorized / Tagged: embedded, simulation, software tools, virtualization

Mark Nelson’s Multicore Non-Panic and Embedded Systems

2007 December 7 22:44 / 2 Comments / Jakob

Via thinkingparallel.com I just found an interesting article from last Summer, about the actual non-imminence of the end of the computing world as we know it due to multicore. Written by Mark Nelson, the article makes some relevant and mostly correct claims, as long as we keep to the desktop land that he knows best. So here is a look at these claims in the context of embedded systems.
Read More →

Tweet
Posted in: Uncategorized / Tagged: blog commentary, embedded, multicore, software tools

The Register reporting from SC’07

2007 November 20 21:31 / Leave a Comment / Jakob

The Register has a pretty good report from the Supercomputing (SC) 2007 conference.  Quite knowledgeable, and mostly about the thorny issue of programming massively parallel fairly homogeneous machines likes GPUs and floating-point accelerators. Of course, their commentary has to be commented on. Read on for more.

Read More →

Tweet
Posted in: Uncategorized / Tagged: computer architecture, conference, multicore, research, software tools

Virtualization and Linux on a DSP Processor

2007 November 4 12:40 / Leave a Comment / Jakob

A small tidbit that I found interesting due to the targeted platform. LinuxDevices reports that the VirtualLogix VLX-NI virtualization layer that used to run only on x86 platforms now also run on TI DSPs in the C64+ series. Basically, you put their virtualization layer on the DSP, and you can then on the same core run both a Linux kernel and a DSP/BIOS kernel. Thus supporting traditional DSP development and Linux-style development on the same core.

Read More →

Tweet
Posted in: uncategorized / Tagged: embedded, linux, multicore, software tools, virtualization

Valve Source Engine Multicore Port (presentation comment)

2007 October 25 21:00 / 1 Comment / Jakob

Game engine development company Valve has a nice presentation up on their website about how they attacked multithreading. It is a nice example of how to solve multicore programming for a particular domain by the classic layered approach.

Read More →

Tweet
Posted in: Uncategorized / Tagged: multicore, software tools

Hardware Debug Support & LinuxLink PodCast

2007 October 14 21:56 / Leave a Comment / Jakob

The TimeSys Embedded Linux Podcast (also called LinuxLink Radio) is a nice listen about embedded computing using Linux. Sometimes they are a bit too open-source centric, though, and ignore very good tools that live in the classic commercial world. One such example is the recent episode 20 on debugging tools, where they totally ignore modern high-powered hardware-based debugging.

Read More →

Tweet
Posted in: Uncategorized / Tagged: computer architecture, debugging, embedded, linux, podcast commentary, software tools

FTF Paris: Debug connections threat to secure network devices

2007 October 11 14:18 / Leave a Comment / Jakob

In a report from FTF Paris 2007, Info World makes some interesting comments on security and locking-down of mobile devices. Info World » Blog Archive » ‘Flat IP’ mobile networks face new security challenges:

Read More →

Tweet
Posted in: Uncategorized / Tagged: blog commentary, computer architecture, embedded, security, software tools

ARM Cortex-A9, Trango, and Virtualization for Migration

2007 October 7 20:46 / Leave a Comment / Jakob

The new version of Trango’s embedded “secure virtualizer” for the ARM Cortex-A9 MPCore is an interesting solution in that it directly applies virtualization technology to the issue of migrating solutions (complete software stacks) from single-core to multicore. The details are a bit sketchy in just how this is done, there is some hardware support in recent ARM architectures, but a little bit of adaptation of a guest OS using paravirtual techniques are likely not a blocker. It also touches on security, implemented using ARM’s trustzone technology. All in all, I think this is a typical example of something that we are going to see much more of.

Tweet
Posted in: uncategorized / Tagged: computer architecture, embedded, multicore, security, software tools, virtualization

Power.Org Dev Con: C Domination a Problem for Multicore

2007 September 30 10:34 / Leave a Comment / Jakob

I just read a EETimes report from a panel at the Power.org Developers Conference (actually, it is more accurately called the Power Architecture Developers Conference, of PADC), about programming multicore processors for the embedded market. Note that I was not there in person, so I can only take the few quotes in the article and comment on them. The main conclusions are that:

  • C/C++ is going to be the dominant language for embedded for the near future. Nothing really surprising at that.
  • C/C++ being dominant means that parallelism in multicore processors, especially shared-memory systems, will be harder to exploit. That is certainly true.
  • Tool vendors have no good idea about what to do next.
  • You cannot expect to get traction with a new language.

In a sense, blaming the market for not having the good sense to adapt new tools to tackle multicore.

I don’t think things have to be that bleak.

Read More →

Tweet
Posted in: Uncategorized / Tagged: blog commentary, computer architecture, conference, multicore, software tools

Golf Games and Computer Simulations

2007 September 29 17:49 / 1 Comment / Jakob

golf.pngIn my work at Virtutech trying to explain Simics and its simulation philosophy, it is often a struggle to get people to accept that what seems like pretty brutal simplifications of the world actually work quite nicely. Recently, I found a nice analogy in a golf game/simulator. The type where you swing a real club and send a real golf ball through the air.
Read More →

Tweet
Posted in: Uncategorized / Tagged: games, simulation, software tools

Comment on Joel Spolsky and Programming to “Moores Law”

2007 September 29 15:49 / Leave a Comment / Jakob

Joel Spolsky is always worth a read, and in his post Strategy Letter VI he has a lot of smart things to say about how to consider programming. His basic message is that if you optimize your code too much to work well and fit in the memory of a current machine, by the time that you are done, you find yourself run over by competitors that just assumed machines would be faster and used the same programming time to implement cooler products.

I just have to take issue with this.

Read More →

Tweet
Posted in: Uncategorized / Tagged: blog commentary, computer architecture, multicore, software tools

Recent Posts

  • A Few Electrons too Many
  • Wind River Blog: Visuality NQ CIFS Server on Simics
  • Everything in the Cloud?
  • Wind River Blog: TCF and Simics
  • Off-Topic: Moving Bad Piggies Save Games
  • Two Cores, Four Cores, Eight Cores – Mobile Variety
  • Bliss: Failing to Pivot for Ideology
  • Wind River Blog and Movie: Demo of Simics Debugging
  • Simulation vs Reality in Schlock Mercenary
  • Programming like Lego
  • Does ISA Matter for Performance?
  • Wind River Blog: Debugging Simics using Simics
  • Wind River Blog: Simics and Flying Piggies
  • Dragons can be Useful – when AT Models Make Sense
  • Logging (Some More Thoughts)

Categories

  • appearances (30)
  • articles (21)
  • blogging (10)
  • books (6)
  • business issues (31)
  • computer architecture (35)
  • conferences (34)
  • EDA (50)
    • ESL (35)
  • embedded (78)
    • embedded software (57)
    • embedded systeme (50)
  • general research (6)
  • history (32)
    • general history (7)
    • history of computing (26)
  • off-topic (94)
    • biking (5)
    • board games (1)
    • computer games (3)
    • desktop software (35)
    • food and drink (1)
    • funny (12)
    • gadgets (24)
    • Politics (3)
    • popular culture (5)
    • trains (5)
    • transportation (10)
    • travel (10)
    • websites (3)
  • parallel computing (92)
    • multicore computer architecture (51)
    • multicore debug (22)
    • multicore software (65)
  • programming (107)
  • review (8)
  • security (19)
  • teaching (7)
  • testing (9)
  • uncategorized (12)
  • virtual things (128)
    • computer simulation technology (68)
    • virtual machines (17)
    • virtual platforms (97)
    • virtualization (14)
  • Wind River Blog (39)

Tags

ARM blog commentary Cadence Checkpointing clock-cycle models Communications of the ACM computer architecture conference cycle accuracy debugging DML Domain-specific languages embedded freescale G900 heterogeneous homogeneous IBM Intel iPod lego linux mobile phones multicore off-topic office 2007 operating systems p4080 podcast commentary power architecture rant research reverse debugging reverse execution S4D SiCS Multicore days Simics simulation software tools Sun SystemC video virtualization Vista Windows

1

  • F-Secure Blog

Blogs and news

  • Andras Vajda's blog (on multicore)
  • Embedded in Academia (John Regehr)
  • Grant Martin
  • Jack Ganssle
  • My Wind River Blog
  • Security Now podcast
  • Secworks (Joachim Strömbergson)
  • Simon Kågström
  • Synopsys View from the Top
  • Worse Than Failure

Archives

  • May 2013 (1)
  • April 2013 (1)
  • March 2013 (4)
  • February 2013 (1)
  • January 2013 (3)
  • December 2012 (2)
  • November 2012 (2)
  • October 2012 (1)
  • September 2012 (6)
  • August 2012 (4)
  • July 2012 (4)
  • June 2012 (3)
  • May 2012 (4)
  • April 2012 (2)
  • March 2012 (3)
  • February 2012 (1)
  • January 2012 (6)
  • December 2011 (2)
  • November 2011 (3)
  • October 2011 (4)
  • September 2011 (5)
  • August 2011 (4)
  • July 2011 (3)
  • June 2011 (4)
  • May 2011 (7)
  • April 2011 (1)
  • March 2011 (3)
  • February 2011 (5)
  • January 2011 (1)
  • December 2010 (4)
  • November 2010 (3)
  • October 2010 (5)
  • September 2010 (5)
  • August 2010 (5)
  • July 2010 (6)
  • June 2010 (5)
  • May 2010 (3)
  • April 2010 (4)
  • March 2010 (3)
  • February 2010 (4)
  • January 2010 (7)
  • December 2009 (6)
  • November 2009 (6)
  • October 2009 (7)
  • September 2009 (6)
  • August 2009 (7)
  • July 2009 (11)
  • June 2009 (5)
  • May 2009 (10)
  • April 2009 (7)
  • March 2009 (8)
  • February 2009 (9)
  • January 2009 (12)
  • December 2008 (8)
  • November 2008 (9)
  • October 2008 (9)
  • September 2008 (10)
  • August 2008 (13)
  • July 2008 (12)
  • June 2008 (8)
  • May 2008 (9)
  • April 2008 (10)
  • March 2008 (7)
  • February 2008 (8)
  • January 2008 (5)
  • December 2007 (5)
  • November 2007 (7)
  • October 2007 (7)
  • September 2007 (12)
  • August 2007 (9)
  • July 2007 (2)
© Copyright 2013 - Observations from Uppsala
Infinity Theme by DesignCoral / WordPress