Difference between revisions of "Vivante GCNANO GPU overview"

[quality revision] [pending revision]
m (Replaced content with "<noinclude> {{ArticleMainWriter|VincentA}} {{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under construc...")
(Tag: Replaced)
m
 








Under construction.png

Contents

Coming soon

1 Introduction[edit]

The STMicroelectronics STM32MP1 platform have an OpenGLES hw IP based on the Vivante Gcnano GPU.
You can find more information here on the Vivante GCNANO web pages [1] [2]

2 Features[edit]

2.1 Supported open standards[edit]

The Vivante Gcnano GPU is compatible with the following Khronos's open standards 3D graphics [3]:

  • OpenGLES 2.0
  • OpenGLES 1.1
  • OpenVG 1.1
  • EGL 1.4

2.2 Vivante Gcnano GPU configuration[edit]

  • Core Clock 264MHz
  • Shader Clock 264MHz
  • Pixel Rate 264 MPixel/sec
  • Triangle Rate 26.4 M tri/sec
  • Vertex rate 66 M vtx/sec
  • 1 shader core (Vec 4)
  • 2.112 GFLOPS shader

3 GPU softwares[edit]

GPU software structure.png

3.1 Vivante Gcnano GPU userland libraries[edit]

Source code is NOT available for customers, excepted if customers signed a NDA with Vivante (please contact Vivante if you need these library source codes). The Gcnano libraries (userland) are:

  • OpenGLES 1.1 library
  • OpenGLES 2.0 library
  • EGL 1.4 library
  • gbm library
  • GAL library
  • GLSLC and VSC libraries
  • VDK library

3.2 Vivante Gcnano kernel driver[edit]

Source code is available for all customers in all OpenSTLinux baselines.

To access source code:

devtool modify gcnano-driver-stm32mp

Source code is then downloaded here:

  • <your_view>/build*/workspace/sources/gcnano-driver-stm32mp


Refer to OpenEmbedded - devtool to know more about devtool.

3.3 Additional information[edit]

  • STMicroelectronics provides debug Vivante Gcnano libraries according to any baseline version, allowing customers to debug/analyze their applications with the Vivante Tool Kit (VTK). Please have a look to the article How to debug the Gcnano GPU with VTK for more details.

4 Useful links[edit]

5 EGL[edit]

5.1 Supported EGL backend[edit]

From VIVANTE_GAL3D_Unified_Src_drv_6.1.x, Vivante delivery, Vivante Gcnano libraries support both DRM/GBM and Wayland backends.
Refer to EGL backends article for details.

5.2 EGL texture 0-copy[edit]

Gcnano supports the EGL texture 0-copy extension.

EGL texture 0-copy extension allows an EGL application to share a texture buffer with the GPU by avoiding to copy the texture from application to the GPU.

Refer to EGL texture 0-copy article for more details.

6 Graphic Benchmarks[edit]

Please refer to the How to test and benchmark OpenGLES article.

7 Debugging[edit]

Please have a look to following articles:

8 References[edit]

<noinclude>

{{ArticleMainWriter|VincentA}}
{{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under construction) | 19Feb’19}}
[[Category:GPU]]</noinclude>

{{UnderConstruction}}ArticleProposedVersion|VincentA|PhilippeC(Failed, 19Jan'18)|No previous approved version|Nobody | 11August'17}}
[[Category:GPU]]</noinclude>


{{ReviewsComments|GeraldB W844: need to refine the place of this article between [[GPU internal peripheral]], [[OpenGLES overview]], ...}}

{{ReviewsComments|PCO (W803) : Check with NSA if there is a need to have a short summary, transforming for instance the content of introduction to a summary}}
{{ReviewsComments|PCO (W803) : Check with NSA how to rephrase the sentence "The STMicroelectronics STM32MP1 platform have an '''OpenGLES''' hw IP based on the '''Vivante Gcnano GPU'''" }}

{{ReviewsComments|PCO (W803) : Please do not use IP, see [[Contributors:Guidelines_for_article_edition#Preferred terms, concepts and acronyms]]}}
{{ReviewsComments|PCO (W803) : we have to decide together the best way to write gcnano, on the web site is is "GC Nano"... anyway, we can also avoid as max as possible to use this word : )}}
{{ReviewsComments|PCO (W803) : Please avoid "br", simply add a blank line}}
{{ReviewsComments|PCO (W803) : Open question: We may rename Vivante to VeriSilicon/Vivante... we can check with legals...}}

==Introduction==
{{ReviewsComments| GeraldB W844: need to make a link with [[GPU internal peripheral]]. If this article is a software overview then it should follow the software framework overview and maybe renamed ?}}
The STMicroelectronics STM32MP1 platform have an '''OpenGLES''' hw IP based on the '''Vivante Gcnano GPU'''.<br>

You can find more information here on the '''Vivante GCNANO web pages''' <ref> http://www.vivantecorp.com/index.php/en/media-article/news/281-20140602-vivante-intros-worlds-first-complete-line-of-gpus-for-wearables-and-iot.html </ref> <ref> http://www.vivantecorp.com/index.php/en/technology/3d.html </ref>


==Features==
===Supported open standards===
The '''Vivante Gcnano GPU''' is compatible with the following '''Khronos's open standards 3D graphics''' <ref> http://www.khronos.org/ </ref>:
* OpenGLES 2.0
* OpenGLES 1.1
* OpenVG 1.1
* EGL 1.4

===Vivante Gcnano GPU configuration===
{{ReviewsComments|PCO (W803) : I think we should avoid these figures, we may point to the chipset databrief instead, to be checked how to do that with NSA }}
* '''Core Clock''' 264MHz
* '''Shader Clock''' 264MHz
* '''Pixel Rate''' 264 MPixel/sec
* '''Triangle Rate''' 26.4 M tri/sec
* '''Vertex rate''' 66 M vtx/sec
* '''1 shader core (Vec 4)'''
* '''2.112 GFLOPS shader'''

==GPU softwares==
{{ReviewsComments|PCO (W803) : 800px is maybe not the recommended value, moreover the legend is not the standard ones :)}}
[[File:GPU_software_structure.png|center|800px|link=]]

===Vivante Gcnano GPU userland libraries===
'''{{Orange|Source code is NOT available for customers}}''', excepted if customers signed a NDA with Vivante (please contact Vivante if you need these library source codes). The Gcnano libraries (userland) are:
{{ReviewsComments|PCO (W803) : maybe an ls of the file should be better... or maybe we can explain more the goal of each below libraries... }}
* OpenGLES 1.1 library
* OpenGLES 2.0 library
* EGL 1.4 library
* gbm library
* GAL library
* GLSLC and VSC libraries
* VDK library

===Vivante Gcnano kernel driver===
'''{{Green|Source code is available for all customers}}''' in all OpenSTLinux baselines. <br>
<br>

To access source code:
 devtool modify gcnano-driver-stm32mp

Source code is then downloaded here:
*'''<your_view>/build*/workspace/sources/gcnano-driver-stm32mp'''<br>

Refer to [[OpenEmbedded - devtool]] to know more about devtool.

===Additional information===
* STMicroelectronics provides '''debug Vivante Gcnano libraries''' according to any baseline version, '''allowing customers to debug/analyze their applications''' with the '''Vivante Tool Kit (VTK)'''. Please have a look to the article [[How to debug the Gcnano GPU with VTK]] for more details.

==Useful links==
{{ReviewsComments|PCO (W803) : This link is not at all useful : ( I think we can remove this chapter}}
* Vivante website: http://www.vivantecorp.com/

==EGL==
===Supported EGL backend===
From VIVANTE_GAL3D_Unified_Src_drv_6.1.x, Vivante delivery, Vivante Gcnano libraries support both '''DRM/GBM''' and '''Wayland''' backends.<br>

Refer to [[EGL backends]] article for details.

===EGL texture 0-copy===
Gcnano supports the EGL texture 0-copy extension.

EGL texture 0-copy extension allows an EGL application to share a texture buffer with the GPU by avoiding to copy the texture from application to the GPU.

Refer to [[EGL texture 0-copy]] article for more details.

==Graphic Benchmarks==
Please refer to the [[How to test and benchmark OpenGLES]] article.

==Debugging==
Please have a look to following articles:
* [[How to activate the Gcnano GPU debug mode]]
* [[How to debug the Gcnano GPU with VTK]]

==References==<references />
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
<noinclude>
 
<noinclude>
 
{{ArticleMainWriter|VincentA}}
 
{{ArticleMainWriter|VincentA}}
{{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under construction) | 19Feb’19}}
+
{{ArticleProposedVersion|VincentA|PhilippeC(Failed, 19Jan'18)|No previous approved version|Nobody | 11August'17}}
 
[[Category:GPU]]
 
[[Category:GPU]]
 
</noinclude>
 
</noinclude>
{{UnderConstruction}}
+
 
  +
{{ReviewsComments|GeraldB W844: need to refine the place of this article between [[GPU internal peripheral]], [[OpenGLES overview]], ...}}
  +
 
  +
{{ReviewsComments|PCO (W803) : Check with NSA if there is a need to have a short summary, transforming for instance the content of introduction to a summary}}
  +
{{ReviewsComments|PCO (W803) : Check with NSA how to rephrase the sentence "The STMicroelectronics STM32MP1 platform have an '''OpenGLES''' hw IP based on the '''Vivante Gcnano GPU'''" }}
  +
 
  +
{{ReviewsComments|PCO (W803) : Please do not use IP, see [[Contributors:Guidelines_for_article_edition#Preferred terms, concepts and acronyms]]}}
  +
{{ReviewsComments|PCO (W803) : we have to decide together the best way to write gcnano, on the web site is is "GC Nano"... anyway, we can also avoid as max as possible to use this word : )}}
  +
{{ReviewsComments|PCO (W803) : Please avoid "br", simply add a blank line}}
  +
{{ReviewsComments|PCO (W803) : Open question: We may rename Vivante to VeriSilicon/Vivante... we can check with legals...}}
  +
 
  +
==Introduction==
  +
{{ReviewsComments| GeraldB W844: need to make a link with [[GPU internal peripheral]]. If this article is a software overview then it should follow the software framework overview and maybe renamed ?}}
  +
The STMicroelectronics STM32MP1 platform have an '''OpenGLES''' hw IP based on the '''Vivante Gcnano GPU'''.<br>
  +
You can find more information here on the '''Vivante GCNANO web pages''' <ref> http://www.vivantecorp.com/index.php/en/media-article/news/281-20140602-vivante-intros-worlds-first-complete-line-of-gpus-for-wearables-and-iot.html </ref> <ref> http://www.vivantecorp.com/index.php/en/technology/3d.html </ref>
  +
 
  +
==Features==
  +
===Supported open standards===
  +
The '''Vivante Gcnano GPU''' is compatible with the following '''Khronos's open standards 3D graphics''' <ref> http://www.khronos.org/ </ref>:
  +
* OpenGLES 2.0
  +
* OpenGLES 1.1
  +
* OpenVG 1.1
  +
* EGL 1.4
  +
 
  +
===Vivante Gcnano GPU configuration===
  +
{{ReviewsComments|PCO (W803) : I think we should avoid these figures, we may point to the chipset databrief instead, to be checked how to do that with NSA }}
  +
* '''Core Clock''' 264MHz
  +
* '''Shader Clock''' 264MHz
  +
* '''Pixel Rate''' 264 MPixel/sec
  +
* '''Triangle Rate''' 26.4 M tri/sec
  +
* '''Vertex rate''' 66 M vtx/sec
  +
* '''1 shader core (Vec 4)'''
  +
* '''2.112 GFLOPS shader'''
  +
 
  +
==GPU softwares==
  +
{{ReviewsComments|PCO (W803) : 800px is maybe not the recommended value, moreover the legend is not the standard ones :)}}
  +
[[File:GPU_software_structure.png|center|800px|link=]]
  +
 
  +
===Vivante Gcnano GPU userland libraries===
  +
'''{{Orange|Source code is NOT available for customers}}''', excepted if customers signed a NDA with Vivante (please contact Vivante if you need these library source codes). The Gcnano libraries (userland) are:
  +
{{ReviewsComments|PCO (W803) : maybe an ls of the file should be better... or maybe we can explain more the goal of each below libraries... }}
  +
* OpenGLES 1.1 library
  +
* OpenGLES 2.0 library
  +
* EGL 1.4 library
  +
* gbm library
  +
* GAL library
  +
* GLSLC and VSC libraries
  +
* VDK library
  +
 
  +
===Vivante Gcnano kernel driver===
  +
'''{{Green|Source code is available for all customers}}''' in all OpenSTLinux baselines. <br>
  +
<br>
  +
To access source code:
  +
devtool modify gcnano-driver-stm32mp
  +
 
  +
Source code is then downloaded here:
  +
*'''<your_view>/build*/workspace/sources/gcnano-driver-stm32mp'''
  +
<br>
  +
Refer to [[OpenEmbedded - devtool]] to know more about devtool.
  +
 
  +
===Additional information===
  +
* STMicroelectronics provides '''debug Vivante Gcnano libraries''' according to any baseline version, '''allowing customers to debug/analyze their applications''' with the '''Vivante Tool Kit (VTK)'''. Please have a look to the article [[How to debug the Gcnano GPU with VTK]] for more details.
  +
 
  +
==Useful links==
  +
{{ReviewsComments|PCO (W803) : This link is not at all useful : ( I think we can remove this chapter}}
  +
* Vivante website: http://www.vivantecorp.com/
  +
 
  +
==EGL==
  +
===Supported EGL backend===
  +
From VIVANTE_GAL3D_Unified_Src_drv_6.1.x, Vivante delivery, Vivante Gcnano libraries support both '''DRM/GBM''' and '''Wayland''' backends.<br>
  +
Refer to [[EGL backends]] article for details.
  +
 
  +
===EGL texture 0-copy===
  +
Gcnano supports the EGL texture 0-copy extension.
  +
 
  +
EGL texture 0-copy extension allows an EGL application to share a texture buffer with the GPU by avoiding to copy the texture from application to the GPU.
  +
 
  +
Refer to [[EGL texture 0-copy]] article for more details.
  +
 
  +
==Graphic Benchmarks==
  +
Please refer to the [[How to test and benchmark OpenGLES]] article.
  +
 
  +
==Debugging==
  +
Please have a look to following articles:
  +
* [[How to activate the Gcnano GPU debug mode]]
  +
* [[How to debug the Gcnano GPU with VTK]]
  +
 
  +
==References==
  +
<references />

Attachments

Discussions