Checking for published posts in a certain post type

I wouldn’t worry about doing a second query (e.g. using get_posts()). If you want to check if a post type has any published posts – you’re going to have to query the database. But reading a database is really quick – any noticable delay in your page load is more likely to come from extra HTTP requests (images, javascript, css etc).

In any case, if you are worried about speed, you presumably have some sort cache plug-in enabled, in which case, most of your visitors won’t notice a difference. In fact, you entire page will only be generated if the cache has expired.