GPU ақпаратына негізделген пайдаланушы жүйесін анықтау әдісі

Бен-Гурион университетінің (Израиль), Лилль университетінің (Франция) және Аделаида университетінің (Австралия) зерттеушілері веб-шолғышта GPU жұмыс параметрлерін анықтау арқылы пайдаланушы құрылғыларын анықтаудың жаңа әдістемесін әзірледі. Әдіс «Drawn Apart» деп аталады және GPU өнімділігі профилін алу үшін WebGL пайдалануға негізделген, ол cookie файлдарын қолданбай және пайдаланушы жүйесінде идентификаторды сақтамай жұмыс істейтін пассивті бақылау әдістерінің дәлдігін айтарлықтай жақсарта алады.

Сәйкестендіру кезінде көрсету, GPU, графикалық стек және драйверлер ерекшеліктерін ескеретін әдістер бұрын қолданылған, бірақ олар тек видеокарталар мен графикалық процессорлардың әртүрлі үлгілері деңгейінде құрылғыларды бөлу мүмкіндігімен шектелген, т.б. сәйкестендіру ықтималдығын арттыру үшін қосымша фактор ретінде ғана пайдаланылуы мүмкін. Жаңа «Drawn Apart» әдісінің басты ерекшелігі - ол әртүрлі GPU үлгілерін бөлумен шектелмейді, бірақ жаппай параллельді орнатуға арналған чиптерді өндіру процесінің гетерогенділігіне байланысты бір үлгідегі бірдей GPU арасындағы айырмашылықтарды анықтауға тырысады. есептеу. Өндіріс процесінде пайда болатын вариациялар бірдей құрылғы үлгілері үшін қайталанбайтын кескіндерді қалыптастыруға мүмкіндік беретіні атап өтілген.

GPU ақпаратына негізделген пайдаланушы жүйесін анықтау әдісі

Бұл айырмашылықтарды орындау бірліктерінің санын санау және олардың GPU-дағы өнімділігін талдау арқылы анықтауға болатыны анықталды. Тригонометриялық функциялар жиынтығына негізделген тексерулер, логикалық операциялар және өзгермелі нүктелер есептеулері әртүрлі GPU үлгілерін анықтау үшін примитивтер ретінде пайдаланылды. Бірдей графикалық процессорлардағы айырмашылықтарды анықтау үшін шыңдық шейдерлерді орындау кезінде бір мезгілде орындалатын ағындардың саны бағаланды. Анықталған әсер температуралық жағдайдағы айырмашылықтардан және чиптердің әртүрлі даналарының қуат тұтынуынан туындайды деп болжанады (бұрын ұқсас әсер орталық процессорлар үшін де көрсетілді - бірдей процессорлар бір кодты орындау кезінде әртүрлі қуат тұтынуды көрсетті).

WebGL арқылы операциялар асинхронды орындалатындықтан, JavaScript API performance.now() олардың орындалу уақытын өлшеу үшін тікелей пайдаланыла алмайды, сондықтан уақытты өлшеу үшін үш трюк ұсынылды:

  • экранда — көріністі HTML кенепінде көрсету, Window.requestAnimationFrame API арқылы орнатылған және көрсету аяқталғаннан кейін шақырылатын кері шақыру функциясының жауап беру уақытын өлшеу.
  • экраннан тыс - жұмысшыны пайдалану және көріністі OffscreenCanvas нысанына көрсету, convertToBlob пәрменінің орындалу уақытын өлшеу.
  • GPU - OffscreenCanvas нысанына сурет салыңыз, бірақ GPU жағындағы пәрмендер жиынының ұзақтығын ескеретін уақытты өлшеу үшін WebGL ұсынатын таймерді пайдаланыңыз.

Идентификаторды жасау процесі кезінде әрбір құрылғыда 50 сынақ орындалады, олардың әрқайсысы 176 түрлі сипаттаманың 16 өлшемін қамтиды. 2500 түрлі графикалық процессоры бар 1605 құрылғыда ақпарат жинаған эксперимент Drawn Apart қолдауын қосқанда біріктірілген сәйкестендіру әдістерінің тиімділігінің 67%-ға артқанын көрсетті. Атап айтқанда, біріктірілген FP-STALKER әдісі орташа есеппен 17.5 күн ішінде сәйкестендіруді қамтамасыз етті және Drawn Apart-пен біріктірілгенде сәйкестендіру ұзақтығы 28 күнге дейін өсті.

GPU ақпаратына негізделген пайдаланушы жүйесін анықтау әдісі

  • Intel i10-5 чиптері (GEN 3470 Ivy Bridge) және Intel HD Graphics 3 GPU бар 2500 жүйені экрандық сынақта бөлу дәлдігі 93%, ал экраннан тыс сынақта 36.3% болды.
  • NVIDIA GTX10 бейне картасы бар 5 Intel i10500-10 жүйесі (GEN 1650 Comet Lake) үшін дәлдік 70% және 95.8% болды.
  • Intel UHD Graphics 15 GPU бар 5 Intel i8500-8 жүйесі (GEN 630 Coffee Lake) үшін - 42% және 55%.
  • Intel HD Graphics 23 графикалық процессоры бар 5 Intel i4590-4 (GEN 4600 Haswell) жүйесі үшін – 32.7% және 63.7%.
  • Mali-G20 MP20 графикалық процессоры бар алты Samsung Galaxy S77/S11 Ultra смартфондары үшін экрандық сынақта сәйкестендіру дәлдігі 92.7%, ал Mali-G9 MP9 бар Samsung Galaxy S72/S18+ смартфондары үшін 54.3% болды.

GPU ақпаратына негізделген пайдаланушы жүйесін анықтау әдісі

Дәлдікке GPU температурасы әсер еткені және кейбір құрылғылар үшін жүйені қайта жүктеу идентификатордың бұрмалануына әкелгені атап өтілген. Әдісті басқа жанама сәйкестендіру әдістерімен бірге пайдаланған кезде дәлдікті айтарлықтай арттыруға болады. Олар сонымен қатар жаңа WebGPU API тұрақтандырғаннан кейін есептеу шейдерлерін пайдалану арқылы дәлдікті арттыруды жоспарлап отыр.

Intel, ARM, Google, Khronos, Mozilla және Brave бұл мәселе туралы 2020 жылы хабарланған, бірақ әдістің егжей-тегжейлері енді ғана ашылып жатыр. Зерттеушілер сонымен қатар экранда ақпаратты көрсетпей де, көрсетпей де жұмыс істей алатын JavaScript және GLSL тілдерінде жазылған жұмыс мысалдарын жариялады. Сондай-ақ, Intel GEN 3/4/8/10 GPU негізіндегі жүйелер үшін, машиналық оқыту жүйелерінде шығарылған ақпаратты жіктеу үшін деректер жинақтары жарияланды.

Ақпарат көзі: opennet.ru

пікір қалдыру