Модель OSI - Для чего уровень представления и сеансовый уровень?

Победившая версия C ++ на этом тестовом сайте вручную векторизована для x86 с использованием встроенных функций SIMD (SSE, AVX или AVX512) , например, используя _mm256_movemask_pd(v1 <= v2);, чтобы получить битовую маску целого вектора результатов сравнения, позволяя ему проверять 4 пикселя параллельно для выхода за границы. И собственный синтаксис GNU C для SIMD умножается и что угодно, например, r2 + i2 для добавления или умножения векторов SIMD с помощью обычных операторов C / C ++.

Версия C ++ имеет условие цикла, оптимизированное для SIMD:

 // Do 50 iterations of mandelbrot calculation for a vector of eight
 // complex values.  Check occasionally to see if the iterated results
 // have wandered beyond the point of no return (> 4.0).

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


Существует множество версий программы на C и C ++, скорость которых аналогична скорости на Фортране. Они хороши даже для исходного кода C / C ++, который не векторизован вручную.

Я не уверен, поддерживает ли Intel Fortran или любой другой компилятор расширения для ручной векторизации.

6
задан Adam Davis 30 September 2008 в 12:47
поделиться

5 ответов

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

Уровень представления предназначен для преобразования между различными форматами. Это было более просто, когда единственный формат, который волновался по поводу, был кодировкой символов, т.е. ASCII и EBCDIC. Когда Вы рассматриваете все различные форматы, которые мы имеем сегодня (Quicktime, Flash, PDF) централизующий этот слой вне рассмотрения.

TCP/IP не делает выделения к этим слоям, так как они действительно вне объема сетевого протокола. Именно до приложений используют в своих интересах стек для реализации их.

14
ответ дан 8 December 2019 в 03:28
поделиться

Причинами там не являются никакие примеры на Википедию, то, что нет большого примеров сетевой модели OSI, период.

OSI еще раз создал стандарт, который никто не использует, таким образом, никто действительно не знает, как нужно использовать его.

6
ответ дан 8 December 2019 в 03:28
поделиться

Одна из причин, TCP/IP используется сегодня вместо OSI, является им, был слишком чрезмерно увеличенным в размере и теоретическим, сеансовый уровень и уровень представления не действительно необходимы как отдельные слои как оказалось.

3
ответ дан 8 December 2019 в 03:28
поделиться

Уровни 5-6 не являются наиболее часто используемыми в сегодняшних веб-приложениях, таким образом, Вы не слышите много о них. Стек TCP/IP немного отличается, чем чистая Модель OSI.

6
ответ дан 8 December 2019 в 03:28
поделиться

Я думаю, что протоколы уровня представления определяют формат данных. Это означает протоколы как XML или ASN.1. Вы могли утверждать, что видео/аудиокодеки является частью уровня представления, Хотя это, вероятно, направляется к прикладному уровню.

Я не могу помочь Вам с сеансовым уровнем. Это всегда экранировало меня.

Честно говоря, существуют очень неопределенные границы во всем выше транспортного уровня. Это вызвано тем, что это обычно обрабатывается единственным приложением. Кроме того, эти слои непосредственно не связаны с переносом данных от до B. Слои 4 и ниже каждого имеют очень определенную цель в перемещении данных, например, переключении, маршрутизации, гарантируя целостность данных и т.д. Это помогает различать эти слои.

0
ответ дан 8 December 2019 в 03:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: