Intel® QAT加速卡之逻辑实例
Intel QAT加速卡逻辑实例
1. QAT相关的名词组织关系
在本手册中描述的平台上,处理器可以连接到一个或多个英特尔通信芯片组8925至8955系列(PCH)设备。 从软件角度来看,每个PCH设备都包含一个逻辑加速器。 从物理上讲,每个设备都包含多个加速器,这些加速器被负载均衡硬件组件抽象成一个加速器, 发送到一个逻辑加速器的所有请求将在PCH设备内的各个物理加速器之间自动进行负载均衡。 对软件来说,只需要操作一个逻辑加速器即可,可以大大简化应用程序的编程方式,提高工作效率。
一组32个环形存储区(Ring Bank)提供了处理器与PCH设备上的加速引擎之间的通信机制。 每个环形存储区(Ring Bank)包含16个单独的环(Ring)用于通信。 下图显示了处理器,PCH设备,加速器和环形存储区(Ring Bank)之间的关系。

2. 处理器和PCH设备之间的通讯流程
加速服务通过对请求和响应消息分别使用不同的环进行通讯。处理器和PCH设备之间的通信通过以下操作实现(另请参见下图):
- ①处理器使用写(Put)操作将请求放置在请求环上。
- ②PCH设备使用读取(Get)操作从请求环中检索请求。
- ③执行完该操作后,PCH设备将使用写(Put)操作将响应放入响应环。
- ④处理器使用读取(Get)操作从响应环中检索响应。

3. 服务实例与硬件的交互
环形存储区(Ring Bank)支持两个加密实例(CY Engine)和两个压缩实例(DC Engine)。服务实例可被视为加速器与处理器上运行的内核/线程之间的通道,该处理器使用这些环进行通信。 这些环不会对API公开,而是使用配置文件(每个PCH设备一个)来设置的。
通常,服务实例使用一对环,一个环用于请求,一个环用于响应。 对于加密实例,单独的请求/响应对用于以下目的:
- 对称(又名批量)加密请求/响应
- TRNG请求/响应
- 公钥密码学请求/响应
下表提供了服务实例的关键属性:
| Member | Sub-field | Description |
|---|---|---|
| coreAffinity | N/A | 设置CPU的亲和性 |
| isPolled | N/A | ①中断模式 ; ②轮询模式 |
下图显示了部分属性与硬件组件的关系:

Intel® QAT加速卡之逻辑实例的更多相关文章
- Intel® QAT加速卡之加密、哈希操作流程和示例
Intel QAT 加密API介绍 文章主要讲述了Intel QAT 加密API接口的说明,以及多种应用场景下的使用方法. 文章目录 Intel QAT 加密API介绍 1. 概述 1.1 会话(se ...
- Intel® QAT 加速卡之IPSec示例
Intel QAT 加速卡之IPSec示例 文章目录 Intel QAT 加速卡之IPSec示例 1. QAT处理IPSec入站报文 2. QAT处理IPSec出站报文 3. 组织架构 4. 示例源码 ...
- Intel® QAT加速卡之Linux上编程说明
QAT Software for Linux 1. Introduction 该程序员指南提供了有关软件体系结构和使用指南的信息. 相关的英特尔QAT软件库文档中记录了有关使用英特尔QuickAssi ...
- Intel® QAT加速卡之同步异步模式
QAT 的两种操作模式 Intel QAT API同时支持同步和异步两种操作模式. 为了获得最佳性能,该应用程序应能够向加速引擎提交多个未完成的请求. 提交多个未完成的请求可最大程度地减少加速引擎上的 ...
- Intel® QAT加速卡之性能简介
Intel QuickAssist Adapter 8950 设备简介 支持英特尔QuickAssist技术的英特尔QuickAssist适配器提供加密加速和压缩加速服务. 1. Key featur ...
- Intel® QAT加速卡之Ring & Ring Bank
1. QAT的应用模式 Intel 通讯系列芯片对于每种受支持的加速服务(加密,数据压缩),都支持以下应用模式: 内核模式,其中应用程序和加速服务都在内核中运行空间. 用户空间直接访问在用户空间中运行 ...
- Intel® QAT加速卡之编程demo框架
QAT demo流程框架 示例一: 代码路径:qat1.5.l.1.13.0-19\quickassist\lookaside\access_layer\src\sample_code\functio ...
- Intel® QAT 加速卡之数据面流程(图)
QAT数据面流程 sessionSetupData数据结构 pOpData数据结构
- C语言调用Intel处理器CPUID指令的实例
C语言调用Intel处理器CPUID指令的实例 来源 https://blog.csdn.net/subfate/article/details/50789905 在Linux环境下,使用C语言内嵌汇 ...
随机推荐
- 大都市meg DFS序
题目描述 在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了.不过,她经常回忆起以前在乡间漫步的情景.昔日,乡下有依次编号为1..n的n个小村庄, ...
- 获取异常信息里再出异常就找不到日志了,我TM人傻了
本系列是 我TM人傻了 系列第三期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 最近组 ...
- JUC学习笔记(四)
JUC学习笔记(一)https://www.cnblogs.com/lm66/p/15118407.html JUC学习笔记(二)https://www.cnblogs.com/lm66/p/1511 ...
- 小白学习vue第五天-第二弹(全局局部、父子、注册语法糖,script/template抽离模板)
全局组件: 就是注册的位置在实例对象的外面 并且可以多个实例对象使用 而局部: 就是在实例对象的内部注册 父组件和子组件的关系 子组件就是在另一个组件里面注册的组件 组件注册语法糖: 就不用Vue.e ...
- 小白学习vue第三天,从入门到精通(computed计算属性)
computed计算属性 <body> <div id="app"> <div>{{myName}}</div> </div& ...
- 3D性能优化 | 说一说glTF文件压缩
引言 最近做T级互动,需要使用到3D模型.相信大家和我一样,在开始着手的时候,一定会有这么些问题: 1.如何选择3D模型的导出格式 2.如何对模型文件进行优化 3.在大流量的项目中兼容性怎么样 让我们 ...
- Http协议中的CharacterEncoding、Content-Encoding和Transfer-Encoding
https://www.cnblogs.com/jinzhiming/p/5765672.html https://www.jianshu.com/p/e918a65b617f https://www ...
- Woc,考场(面试)忘记打平衡树怎么办,Trie救你命
Woc,考场(面试)忘记打平衡树怎么办,Trie救你命 文本只发布于博客园,其他地方出现本文均是未经许可的盗版. 算法导入 众所周知平衡树很难打(大佬除外),还老是调错.万一这种事情发生在关键时刻你就 ...
- k8s 执行 ingress yaml 文件报错: error when creating "ingress-myapp.yaml": Internal error occurred: failed calling webhook
k8s 执行 ingress yaml 文件报错:错误如下: [root@k8s-master01 baremetal]# kubectl apply -f ingress-test.yaml Err ...
- .NET WebApi 实战第五讲之EntityFramework事务
在<.NET WebApi 实战第二讲>中我们有提到过事务的概念!任何数据库的读操作可以没有事务,但是写事件必须有事务,如果一个后端工程师在数据库写入时未添加事务,那就不是一个合格的工程师 ...