Как разработать, чтобы воспользоваться преимуществами 64-битных систем?

StackOverflow https://stackoverflow.com/questions/1242607

Вопрос

Есть ли какие-либо конкретные отрасли инженера-программиста/информатики, где есть заметная разница при разработке для 64-битных систем?Я программирую уже около 10 лет, и с момента появления 64-битных систем мой код не изменился ни на грамм.

Какие приложения, которые один программист может написать в качестве побочного проекта, требуют использования 64-битной технологии?

Это было полезно?

Решение

Все, что требует более 4 ГБ рабочей и программной памяти, безусловно, подойдет, поскольку это максимальный объем памяти, к которому 32-битная система может обращаться напрямую.

Поскольку 64-битные числа могут находиться в регистрах ЦП, вычисления, требующие чисел этих размеров, приведут к повышению производительности.

Другие советы

Помимо адресного пространства или больших вычислений, удвоение размера слова помогает больше в задачах низкого уровня, и в основном для людей, которые собираются заниматься взломом ядра или писать драйверы устройств.Например, предположим, что у вас есть поток байтов из сетевого подключения, и вам нужно его обработать.Теперь вы можете извлекать эти байты из основной памяти в регистры ЦП по 8 за раз, а не по 4.Но я думаю, что вам нужна строковая библиотека с поддержкой 64 бит, чтобы воспользоваться этим.

Как ни странно, мы наблюдали увеличение производительности при обновлении с 32-битного SQL Server до 64-битного SQL Server (2005) на том же оборудовании (64-битная машина).

Недавно мы перенесли некоторые из наших внутренних библиотек на 64-битную версию.Код C вообще не изменился;нам просто нужно было получить 64-битные версии сторонних библиотек, с которыми мы связываемся, и выяснить, какие новые директивы компилятора нам нужно использовать.Самой большой головной болью был поиск 64-битных версий наших зависимостей и рефакторинг нашей системы сборки для поддержки как 32-битных, так и 64-битных версий.

Это не значит, что другое программное обеспечение не потребует модификации.Например, если вы упаковываете данные так, чтобы они соответствовали границам слов, теперь вы можете упаковать их по-другому при программировании для 64-битной системы.

Если вам нужно спросить, вы, вероятно, не получите никакого преимущества, поскольку вы, вероятно, не встраиваете в свой код какие-либо предположения о размере целых чисел.Довольно немногие варианты использования, и все они довольно низкоуровневые, увидят какое-либо ускорение.Большие числа и арифметика тяжелых целых чисел с очень большими числами будут выполняться быстрее (например, криптография).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top