Непрямоугольные оболочки данных для AMP? - PullRequest
2 голосов
/ 13 февраля 2012

Я экспериментирую с Visual Studio 11 Dev Preview.У меня есть проблемная область, которая требует использования «зубчатых» массивов, то есть массив массивов, где второе измерение не имеет одинакового размера.Документация MSDN, которую я нашел, касается только многомерных массивов, где каждое измерение имеет фиксированный размер.Есть ли способ подражать желаемому поведению?

1 Ответ

2 голосов
/ 17 февраля 2012

Если у вас есть плоский 1d-массив, который предлагает C ++ AMP, вы можете эмулировать множество вещей, включая зубчатые массивы.Например, вы можете построить общие представления разреженной матрицы с одним массивом, содержащим хранилище для элементов, и вторым массивом, содержащим смещения в хранилище.Однако в C # и Java зубчатые массивы также означают «массив с указателями на другие (динамически распределяемые) массивы».Это не то, что будет просто поддерживать, если только вы не моделируете кучу внутри массива, потому что C ++ AMP не поддерживает указатели в массивах.Чего ты пытаешься достичь?

...