Обзор основных изменений в технических опечатках
| Области исправления | Исходные стандартные пункты | Изменения в опечатках | Область влияния |
| Модель параллельных вычислений | 3.145.3/5.3.4 | Введение концепции родственных команд для замены отношений родительской команды | Параллельное программирование Coarray |
| Математические функции | 4.3.3/16.9.5 | Требование к неотрицательной действительной части результата сложных функций ACOSH | Приложения научных вычислений |
| Финализация объектов | 7.5.6.2/9.6 | Правила обработки невыделяемых финализированных объектов | Управление ресурсами |
Углубленный анализ модели параллельных вычислений
Эта опечатка реструктурировала отношения в команде, созданные оператором FORM TEAM:
- Исходный стандарт: основан на иерархии родительско-дочерней команды
- После Опечатка: Принята модель родственных команд, а определение 3.145.3bis явно требует, чтобы TEAM_NUMBER идентифицировал исходную команду или родственную команду текущей команды
Типичный сценарий применения
!
| Версия | Требование мнимой части | Требование действительной части |
| Fortran 2008 | Неотрицательное | Неограниченное |
| Эта опечатка | Неограниченное | Неотрицательное |
Рекомендации по реализации
- Миграция параллельной программы: проверьте все сценарии использования TEAM_NUMBER, чтобы обеспечить соответствие ограничениям родственных команд
- Проверка математической библиотеки: проверьте, соответствует ли реализация комплексных чисел ACOSH новой спецификации.
- Обновление компилятора: рекомендуется использовать компилятор Fortran 2018, который поддерживает эту опечатку.
Анализ эволюции стандарта.
Эта опечатка отражает три основные тенденции развития стандарта Fortran:
- Уточнение параллельной модели: от простых иерархических до сложных командных взаимоотношений.
- Математическая строгость: спецификация уникальности для результатов сложных функций.
- Безопасность памяти: ужесточение правил обработки финализированных объектов.
ISO/IEC 1539-1:2018/Cor 1:2021 История