Bosco’s Screen Share™
Easy, free, cross-platform screen sharing.
Back to Component XOur other products
Performance Tips
Overview
The perceived performance of interactive screen sharing in Bosco’s Screen Share is dependent on your computer, some system settings, and some Bosco’s Screen Share preferences. On this page, we discuss these issues, show you how to test interactive performance of Bosco’s Screen Share, and offer suggestions for improving performance.

Table of Contents
1. Perceived performance

2. Testing performance

3. Behind the scenes

4. Your computer

1. Perceived performance
When you are viewing or driving a friend’s screen, you should expect your view of your friend’s screen to be updated quickly. If you and your friend both have high speed Internet (e.g. DSL or cable) and have reasonably fast computers (500+ MHz) and have enough memory (256+ MB), you should be able to get 2 or more updates of your friend’s screen per second.

The perceived performance is mostly affected by the computer that is being viewed or driven. A slow computer (e.g. 500 MHz) can usually keep up with the updates sent by a fast computer (e.g. 2 GHz).

2. Testing performance
Bosco’s Screen Share has a built-in facility for testing how it performs on your computer. Choose Test Performance... from the File menu. Bosco’s Screen Share performs a series of tests, usually taking less than 20 seconds total, and displays its results.

The results are broken down into an Interactive Test, a Sending Test, and a Receiving Test. Times in milliseconds are reported for each test and the components that comprise them. Lower times are better. The results are also interpreted to predict how many screens can be sent and received per second.

The Interactive Test measures the total time needed to take a screenshot, package it up, send it, receive it locally, unpackage it, and display it. The result is a little misleading to the side of lower perceived performance because it does not account for the sending computer and receiving computer doing different work simultaneously. But the reported time is useful for comparisons and tuning.

The Sending Test captures the steps performed when capturing a screen and packaging it to send. The process is explained in greater detail below, but the important parts are capturing the screen, scaling it down to the size needed by the receiving computer, and encoding the difference between the screen and the previously sent screen.

The Receiving Test captures the steps performed when unpackaging a screen and displaying it. The process is explained in greater detail below, but the important parts are decoding the difference between the screen and the previously received screen and displaying the screen.


Figure 1: The Performance Test... menu item of the File menu.


Figure 2: Performance test results.

3. Behind the scenes
When Bosco’s Screen Share sends a screen, it must perform a few computationally intensive tasks. The speed with which it can complete each of these tasks affects perceived performance.

First, it must take a screenshot. Larger screens require more time to take a screenshot than smaller screens. We have strived to make sure that performance is reasonable on 1024x768 and smaller screens for even low-end computers. On Windows computers, having your screen set at 16-bit instead of 24-bit will usually improve performance. The same is true on Macs powered by the older G3 processor. On G4 and G5 powered Macs, however, 32-bit (or “millions”) will be marginally faster than 16-bit (or “thousands”). This is because our screenshot code is accelerated for G4/G5 when the screen uses millions of colors, but not when the screen uses thousands of colors. On both Windows and Mac platforms, the faster your processor, the faster the screenshot can be taken.

Second, the screen is scaled down to the size that the person viewing or driving sees on their screen. This is done before the screen is sent over the network. By doing this on the viewed or driven size, we have reduced the bandwidth required for Bosco’s Screen Share to the point where it can run somewhat comfortably over a 56Kbps modem. Just like taking the screenshot, scaling performance is better the faster your computer is. Macs with a G4 or G5 processor benefit greatly from accelerated scaling, courtesy of our Component X Graphics engine.

Third, the scaled screen is compared to the last scaled screen sent and a difference computed. The difference is encoded in the JPEG format for sending. More often than not, consecutive screens aren’t terribly different. So if we can identify the parts that are different and send just those parts, we’ll send a lot less data. Processor speed is the most important factor on both platforms for this step. G4/G5 Macs get marginal benefits from underlying accelerated code, but in the whole scheme of things, not much.

Fourth, the encoded screen difference is sent across the network. The delivery time depends on the size of the data — often 5K or less when the screen isn’t changing too much — and the speed of the network connection. Bosco’s Screen Share sends screens as fast as it can generate them and uses a flow control technique to ensure that it isn’t swamping the computer viewing or driving.

Finally, when the computer that is viewing or driving receives the screen difference information, it decompresses it and builds the next screen to display. Again, processor speed is the most important consideration for this step. However, the decoding step takes a lot less work than the process of taking a screenshot, scaling, and encoding the screen difference.

4. Your computer
Generally, the faster your computer, the better overall performance can be achieved by Bosco’s Screen Share. On Macs, a G4/G5 will perform significantly better than a G3 of equivalent speed because some of our code is accelerated for G4/G5 processors.

More memory can also improve performance significantly. Both Windows computers and Macs have virtual memory systems, which make use of disk space when memory is low. The upside is applications rarely run out of memory. The downside is that accessing the disk (also called “swapping”) is very slow. To minimize the effects of swapping for Bosco’s Screen Share and other applications, you can install more RAM. We recommend a minimum of 256 MB. Since RAM is fairly cheap, the more the better!

Screen size and bit depth (or number of colors) also affect perfomance. Slower computers (i.e. 500 MHz range) should probably keep screen size restricted to 1024x768 or smaller. Faster computers can handle larger screens. On Macs, a G4 or G5 processor makes a huge difference is how screen size affects overall performance.