На пятничном семинаре учебного проекта лаборатории МФТИ-Интел один из студентов задал мне примерно такой вопрос: а почему 64-битный вариант архитектуры процессоров Intel называется x64, а 32-битный — x86? Я начал объяснять, что не всё так просто. Захотелось нарисовать более полную картину. Ведь на самом деле это не x64, и даже не x86.
Читать полностью »
Метка «x64»
Десять имён для одной архитектуры
2013-11-13 в 9:51, admin, рубрики: amd64, IA-32, x64, x86, x86_64, Блог компании Intel, История ИТ, Процессоры, метки: amd64, IA-32, x64, x86, x86_64Вот и отгремело первое апреля. Кто-то в этот день нюхал свои девайсы в новом сервисе Google Нос, кто-то играл в «Поле чудес», а кто-то, позабыв о роковой дате, просто угрюмо отряхивал спину от мела…
Я же, воодушевлённый статьёй про скрытые возможности кастомизации процесса explorer.exe, тоже решил сделать что-нибудь забавное.
Пусть сегодня моя секундная стрелка часов в Windows идёт в обратную сторону! Не самый, конечно, полезный в хозяйстве мод, но в академических и рекреационных целях вполне сгодится :)
Часовую и минутную стрелки я оставил в правильном направлении. Иногда всё же приходится полгядывать на часы в трее — пусть они показывают время с точностью хотя бы до минуты...
Выбор платформозависимой библиотеки в runtime
2013-01-14 в 11:16, admin, рубрики: .net, msbuild, x64, x86, конфигурация, Платформа, метки: .net, msbuild, x64, x86, конфигурация, платформаСуть вопроса
В большинстве случаев .NET-приложения являются платформонезависимыми. Мы ожидаем, что наше приложение будет одинаково выполняться как в 32-хразрядной ОС, так и 64-хразрядной.
Так обычно и происходит до тех пор, пока нам не понадобится использовать внешние платформозависимые библиотеки, например неуправляемые. Если такая библиотека существует в вариантах и для x86
, и для x64
, то это может принести нам определенную головную боль. Будем исходить из того, что ограничивать наше приложение, например, только 32-хразрядным процессом не в наших правилах.
Возможно, нам придется поддерживать вдвое больше конфигураций проекта. В этом случае при отладке придется переключать конфигурации, ведь разработческий веб-сервер Cassini существует только в x86
варианте, а ReSharper может запускать тесты и в 64-хразрядном процессе. Кроме того, придется выпускать два дистрибутива и предоставлять пользователю при скачивании с сайта ох какой нелегкий выбор. Поэтому разумным решением выглядит выбор подходящей для работы библиотеки уже в runtime в зависимости от того, в каком процессе (32-х или 64-хразрядном) код выполняется. При этом сами проекты остаются AnyCPU
.
В нашем приложении необходимо подключаться к к Oracle Database, для чего используются библиотеки Oracle Instant Client и Oracle Data Provider for .NET.
Читать полностью »
Бесконечные генераторы значений на Delphi + Ассемблер
2012-11-07 в 17:20, admin, рубрики: Delphi, x64, Алгоритмы, ассемблер, генераторы, Программирование, функциональное программирование, метки: Delphi, x64, Алгоритмы, ассемблер, генераторы, функциональное программирование В функциональных языках программирования есть возможность генерировать бесконечные последовательности значений (как правило чисел) и оперировать этими последовательностями. Реализуется это функцией, которая, не прерывая свою работу, генерирует значения одно за другим на основе своего внутреннего состояния.
Но, к сожалению, в обычных языках нет возможности «вернуть» значения в место вызова не выходя из функции. Один вызов — один результат.
Генераторы удобно было бы использовать совместно с возможностью Delphi по перечислению значений (GetEnumerator/MoveNext/GetCurrent). В этой статье мы создадим функцию-генератор (может даже бесконечную) и будем использовать ее с таким объектом для перечисления, чтобы всё работало прозрачно без необходимости вникать в реализацию.
Читать полностью »
Unbiased DirectX Рендеринг на GPU, CPU и в облаке
2012-10-02 в 6:24, admin, рубрики: cloud computing, CUDA, direct3d, DirectX, gpgpu, gpu, HLSL, intel, opencl, path tracing, ray tracing, shaders, unbiased rendering, windows azure, x64, x86, Анимация и 3D графика, Облачные вычисления, рендеринг, рендеринг без допущений, трассировка лучей, трассировка пути, шейдеры, метки: 3d графика, cloud computing, CUDA, direct3d, DirectX, gpgpu, gpu, HLSL, intel, Nvidia, opencl, path tracing, ray tracing, shaders, unbiased rendering, windows azure, x64, x86, АРМ, облачные вычисления, рендеринг, рендеринг без допущений, трассировка лучей, трассировка пути, шейдеры Как создать рендерер, который бы работал даже на компьютере вашей бабушки? Изначально перед нами стояла немного другая задача — создать unbiased рендер для всех моделей GPU: NVidia, ATI, Intel.
Хотя идея такого рендера для всех видеокарт витала в воздухе давно, до качественной реализации, тем более на Direct3D, дело не доходило. В своей работе мы пришли к весьма дикой связке и дальше расскажем, что нас к ней привело и как она работает.
Как мы соединяли свой ЦОД с ЦОДом заказчика
2012-07-24 в 7:30, admin, рубрики: RISC, VPC, x64, Блог компании КРОК, бэкенд, ит-инфраструктура, масштабируемость, минимизация затрат, хостинг, цод, метки: risc, VPC, x64, бэкенд, масштабируемость, минимизация затрат, цод
Представьте задачу:
- Вы решили стартовать IT-проект, который требует большой вычислительной мощности.
- «Взлетит» он или нет, станет понятно через 3 месяца.
- Космически дорогое железо (несколько серверов по цене квартиры в Москве каждый) покупать не хочется, но при этом надо сразу стартовать так, чтобы потом не было сложностей с масштабированием до серьёзной highload-системы, то есть хочется эластичного «облака».
- В перспективе — необходимость быстро обрабатывать много данных и массу операций чтения-записи. То есть, потребуются тяжелые сервера-«молотилки», которые не могут горизонтально масштабироваться – такое в «облако» не запихнёшь.
- При этом надо создать единое сетевое пространство, как если бы «молотилки» вашего ЦОДа и сервера «облака» находились в соседних стойках, и настроить всё так, чтобы на уровне приложений не приходилось думать про физическое воплощение железа;
- Обеспечить адекватную техподдержку, которая способна закрыть все вопросы по проекту (сеть, сервера, прикладные системы) — и всё это без поиска новых администраторов себе в штат.
- До кучи — запуститься очень быстро;
- И всё это —в Москве, чтобы обеспечить минимальные лаги.
В начале этого года к нам пришел заказчик именно с такими задачами. Читать полностью »
Тайна лишнего CMP или зачем Володька сбрил усы?
2012-07-09 в 13:09, admin, рубрики: c++, Visual Studio, x64, метки: Visual Studio, x64В предыдущей статье, посвященной анализу производительности целочисленного умножения были получены удивительные результаты, требующие интерпретации, а именно — почему при генерации кода в VS2012 значительно (в 5,5 раз) падает скорость, а в VS2010 такого не наблюдается, в чем секрет быстрого кода?
Оказывается, дело было в использовании замечательной команды ADC, которая просто необходима при сложении (или умножении) чисел большой разрядности. Она позволяет задействовать флажок переноса и отпадает необходимость хитрых манипуляций с битами, чтобы вычислить перенос другими способами.
Но команду ADC почему-то не любят компиляторы, причем настолько не любят, что нет простого способа заставить компилятор начать использовать команду ADC вкупе с флажком Carry. Можно, конечно, написать это на ассемблере. Но написание быстрого кода вручную — это непосильная задача, предусмотреть все тонкости и сделать что-то быстрее оптимизирующего компилятора практически невозможно. Еще есть проблема, что в Visual Studio C++ x64 зачем-то отказались от встроенной команды _asm, и чтобы воспользоваться ассемблерными вставками, нужно создавать отдельный ASM-файл, что делать очень не хочется.
На самом деле — нам бы очень пригодился явный intrinsic команды add-with-carry, но Microsoft hard-working создатели компилятора, когда у них спросили об этом напрямую, заявили что add-with-carry intrinsic имеет ограниченное применение и поэтому в текущем компиляторе его нет. Очень и очень зря.
Читать полностью »
Проблема с конвертированием eps-файла в векторный формат из GSView под Windows (x64)
2012-03-29 в 13:30, admin, рубрики: emf, wmf, x64, обработка изображений, типографика, метки: emf, wmf, x64Откуда ноги
Если вам вдруг (не знаю отчего) пришла в голову мысль «а не переделать ли мне мою старую научную статью из TeX'a в Microsoft Word» или если презентацию вашего выдающегося диплома/диссертации приходится по-быстрому лепить в PowerPoint'е, то наверняка вы придете в ужас, увидев какого качества получаются прекрасно-векторные eps-графики после вставки их в документы, созданные вами в офисных приложениях от Microsoft'а. Читать полностью »