Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Технический перевод / Software Efficiency

.docx
Скачиваний:
28
Добавлен:
15.06.2014
Размер:
21.05 Кб
Скачать

Software Efficiency: Does it matter?

June 8, 2007

In an era where processor speed doubles every 18 months (Moore’s law), do we really need to worry about software efficiency? The fact is that regardless of phenomenal advances in chip technology, software efficiency is still a prominent concern.

In 1971, the Intel 4004 was the first commercial processor to fit on a single chip. It was named a microprocessor. Since then, microprocessor technology has embarked on a 25-year streak of doubling processor speed every 18 months. Today’s microprocessors are tens of thousands of times faster than the Intel 4004. If processor speed was the answer to inefficient software, the issue would have been resolved and long forgotten. Yet, software efficiency is still a concern with most development organizations. Why?

Imagine that you are trying to sell your product, say a Web application server, to a Fortune 500 company. They need 600 transactions per second to run their business online. Your application server can support only 60 transactions per second before running out of steam on the latest and greatest server hardware. If the customer is to use your software, they need to string together a cluster of at least 10 servers to reach their 600-transaction per second goal, raising the cost of your solution in terms of hardware, software licenses, network administration, and maintenance. To make matters worse, the customer has invited two of your competitors to pitch their own solutions. If a competitor has a more efficient implementation, they will need less hardware to deliver the required performance, and they will offer a cheaper solution. It is often the case that the most efficient solution wins the bid.

You also must examine how processing speed compares to communication speed. If we can transmit data faster than the computer can generate it, then the computer (processor plus software) is the new bottleneck. The limits imposed by physics might soon put the brakes on the fantastic growth of processor speed. Not so for communication speed. Like processing speed, communication speed has enjoyed phenomenal growth. Back in 1970, 4800 bits per second was considered high-speed communication. Today, hundreds of megabits per second is common. The end of the road for communication speed is nowhere in sight. Optical communication technology does not seem to have show-stopping technological roadblocks that will threaten progress in the near future. Several research labs are already experimenting with 100-gigabitper-second all-optical networking.

The biggest obstacle currently is not of a technical nature; it is the infrastructure. High-speed networking necessitates the rewiring of the information society from copper cables to optical fiber. This campaign is already underway. Communication adapters are already faster than the computing devices attached to them. Emerging network technologies such as 100 Mbps LAN adapters and high-speed ATM switches make computer speed critical.

Эффективность ПО: Имеет ли значение?

В эпоху, когда скорость процессоров удваивается каждые 18 месяцев (Закон Мура), действительно ли мы должны беспокоиться об эффективности программного обеспечения? Дело в том, что независимо от необыкновенных достижений в технологии чипов, эффективность программного обеспечения все еще остается важным вопросом.

В 1971 году Intel 4004 был первой коммерческим процессором, который помещался на одном чипе. Эго назвали микропроцессором. С тех пор, микропроцессорная технология приступила к 25-летнюю серию удвоения скорости процессора каждые 18 месяцев. Сегодняшние микропроцессоры в десятки тысяч раз быстрее, чем Intel 4004. Если скорость процессора был ответом на неэффективное программное обеспечение, проблема была бы решена и давно забыта. Тем не менее, программное обеспечение эффективности все еще является проблемой в большинстве организаций по разработке. Почему?

Представьте, что вы пытаетесь продать свой продукт, скажем, веб-сервер приложений, компании Fortune 500. Им необходима в 600 операций в секунду, чтобы вести свой бизнес в Интернете. Ваш сервер приложений может поддерживать только 60 операций в секунду, перед запуском из пара на последних и самых больших серверного оборудования. Если клиент является пользователем программного обеспечения, они должны соединить вместе блок по крайней мере, 10 серверов для достижения своей цели в 600 операций в секунду, повышается стоимость вашего решения с точки зрения аппаратного обеспечения, лицензий на программное обеспечение, сетевое администрирование и техническое обслуживание. Хуже того, клиент пригласил двух ваших конкурентов, чтобы предоставить свои собственные решения. Если конкурент имеет более эффективную реализацию, им необходимо меньше аппаратного обеспечения требуемой производительности, и они будут предлагать более дешевые решения. Скорость процессора является постоянной в этой ситуации - поставщики программного обеспечения в этой истории завершают на том же аппаратном обеспечении. Часто случается, что наиболее эффективное решение выигрывает ставку.

Вы также должны рассмотреть, как скорость обработки можно сравнить со скоростью передачи данных. Если мы можем передавать данные быстрее, чем компьютер может генерировать их, значит компьютер (процессор плюс программное обеспечение) является новым препятствием. Ограничения, налагаемые физиками вскоре могут затормозить фантастический рост скорости процессора. Но это не так для скорости передачи данных. Как и скорость обработки данных, скорость передачи данных пользуется необыкновенным ростом. Еще в 1970, 4800 бит в секунду считалось высокоскоростной связью. Сегодня сотни мегабит в секунду являются распространенным явлением. Конца дороги для скорости передачи данных нигде не видно.

Оптическая технология связи не представляется, что имеет показательное останавливающее технологическое препятствие, которое будет угрожать прогрессу в ближайшем будущем. Несколько исследовательских лабораторий уже экспериментировали с полными оптическими сетями на скорости 100-гигабит в секунду. Главное препятствие в настоящее время это не технический характер, это инфраструктура. Высокоскоростная сеть требует внесения изменений в информационное общество от медных кабелей к оптическому волокну. Эта кампания уже идет. Коммуникационные адаптеры уже быстрее, чем вычислительные устройства, которые к ним подключенны. Новые сетевые технологии, такие как 100 Мбит LAN адаптеры и высокоскоростные переключатели ATM делают скорость компьютера критической.