云原生周刊:K8s 中的 GPU 共享
开源项目推荐
A2A
Google 的 Agent2Agent(A2A)协议是一个开源标准,旨在促进不同框架和供应商构建的 AI 代理之间的互操作性。它允许代理通过统一的协议安全地交换信息、协同执行任务,并在多种企业平台和云环境中无缝协作。
A2A 的设计遵循五大原则:支持代理的自然协作方式、构建于现有标准之上、默认安全、支持长时间任务以及支持多种交互方式(如文本、音频、视频) 。该协议通过“Agent Card”机制实现代理发现,允许客户端代理识别并与其他代理进行交互。此外,A2A 还支持任务生命周期管理、用户体验协商和跨代理的功能调用等特性 。
ThreatMapper
ThreatMapper 是 Deepfence 推出的开源云原生应用保护平台(CNAPP),旨在为开发和运维团队提供全面的运行时安全可观察性。它通过轻量级的传感器和无代理的云扫描任务,自动发现和映射容器、K8s、虚拟机、无服务器(如 AWS Fargate)等环境中的漏洞、敏感信息、配置错误和合规性问题。借助 ThreatGraph 可视化,用户可以根据漏洞的可利用性、攻击路径和风险等级,优先处理最关键的安全问题。
Plandex
Plandex 是一个开源的终端式 AI 编程引擎,专为处理大型项目和复杂任务而设计。它通过命令行界面与开发者交互,支持智能上下文管理、多模型选择和版本控制沙箱机制,确保安全的自动化与人工控制模式。Plandex 能处理数百万行代码,并通过集成 OpenAI、Anthropic 和 Google 等多个模型来提升开发效率。采用 MIT 开源许可,支持跨平台使用,适用于大型项目的特性开发、重构和测试编写等任务。
Direktiv
Direktiv 是一款开源的事件驱动型无服务器工作流引擎,专为容器化环境中的自动化、集成和编排任务而设计。其核心是一个状态机,利用容器作为工作流中的功能单元,通过 JSON 数据在各状态之间传递信息。Direktiv 支持重试、错误处理和条件逻辑等功能,允许在执行过程中使用 JQ 或 JavaScript 动态转换状态数据。
文章推荐
QCon London:三步法管理开源风险
在 2025 年 QCon 伦敦大会上,Johnson Matthey 的漏洞管理负责人 Celine Pypaert 分享了管理开源依赖风险的三步法,以在保持创新活力的同时确保安全性。她指出,开源组件已广泛应用于商业代码库中,然而,过度信任常用软件可能导致安全隐患,例如 XZ Utils 后门事件和 npm 上的 Left-pad 删除事件。为应对这些挑战,Pypaert 提出了以下策略:
1.识别与优先级排序: 建议组织实施软件组成分析(SCA)工具,审计开源依赖,特别是在测试环境中,以尽早发现漏洞。在处理漏洞时,不仅要考虑其严重性,还应评估修复的难易程度,并制定分阶段的修复计划。
2.责任与问责: 强调开发人员应与安全团队合作,使用风险登记册引起高层关注。通过建立风险档案,将技术风险与企业风险关联,帮助组织理解软件供应链问题可能对业务连续性产生的影响。
3.主动修复: 倡导尽可能自动化安全任务,例如将漏洞检测工具(如 GitHub 的 Dependabot)与项目管理工具(如 Jira)集成,实现自动分配安全任务,减少团队负担。
Kubernetes 中的 GPU 共享:NVIDIA KAI 与 Exostellar SDG 的对比
KAI-Scheduler 是 NVIDIA 开源的 Kubernetes 原生 GPU 调度器,旨在优化 AI 和机器学习工作负载的资源分配。该项目最初由 Run:ai 开发,现已在 Apache 2.0 许可证下开源,支持大规模 GPU 集群的高效管理。
Exostellar 的联合创始人兼首席技术官 Zhiming Shen 对 NVIDIA 开源的 KAI 调度器与 Exostellar 的软件定义 GPU(SDG)进行了深入比较,重点探讨了在 Kubernetes 环境中实现 GPU 共享的不同方法。
KAI 调度器通过时间切片技术支持 GPU 共享,允许多个工作负载共享同一物理 GPU。然而,KAI 并未强制执行 GPU 内存隔离,导致在运行多个工作负载时可能出现内存争用和性能下降的问题。
相比之下,Exostellar 的 SDG 提供了更精细的 GPU 虚拟化能力,允许用户根据实际需求动态分配 GPU 内存和计算资源,确保更高的资源利用率和更好的性能隔离。
GPU 共享不仅仅是调度问题,更涉及到资源隔离和可靠性的问题,尤其在多租户和高负载的 AI/ML 环境中。
云原生动态
Kafka 4.0:KRaft 简化架构
Apache Kafka 4.0 正式发布,标志着其架构的重大变革。新版本默认启用 KRaft 模式,彻底摆脱了对 Apache ZooKeeper 的依赖,从而简化了部署和管理流程。KRaft 模式采用 Raft 协议,提升了可扩展性和系统恢复能力。此外,Kafka 4.0 引入了 KIP-848,推出了下一代消费者组协议,显著提高了再平衡性能,减少了消费者组的停机时间和延迟。
同时,Kafka 4.0 提供了对队列的早期支持(KIP-932),通过“共享组”概念实现了点对点消息传递,扩展了 Kafka 的应用场景。该版本还移除了至少 12 个月未使用的 API,更新了最低 Java 要求,鼓励采用更新的 Java 特性,并与当前的技术栈保持一致。Kafka 4.0 的发布是平台现代化的重要一步,体现了社区在其 15 周年之际的持续活力与创新。
OpenStack 2025.1 Epoxy 发布
OpenStack 社区于 2025 年 4 月发布了第 31 个版本——2025.1 Epoxy,标志着其在云计算领域的重要进展。此次更新旨在加强 OpenStack 作为 VMware 替代方案的竞争力,特别是在 Broadcom 收购 VMware 并调整许可政策后,促使众多企业重新评估其虚拟化战略。Epoxy 引入了多项关键功能,包括在 Watcher 项目中集成 Prometheus 数据源,以优化资源分配并监控 VMware 基础设施,确保迁移过程的平稳。
此外,Cinder 项目增强了对 NetApp、Pure Storage 和 Hitachi 等存储解决方案的支持,简化了工作负载迁移过程。在安全性方面,Manila 项目允许管理员动态调整共享文件系统的访问权限,从“只读”切换为“读写”,提供更精细的权限控制。Epoxy 的发布得益于来自 BBC R&D、Blizzard Entertainment、Canonical、Ericsson、Mirantis 和 NVIDIA 等约 450 名开发者的贡献,共计超过 7,600 项更改,体现了 OpenStack 社区在其 15 周年之际的持续活力与创新。
关于KubeSphere
KubeSphere (https://kubesphere.io)是在 Kubernetes 之上构建的开源容器平台,提供全栈的 IT 自动化运维的能力,简化企业的 DevOps 工作流。
KubeSphere 已被 Aqara 智能家居、本来生活、东方通信、微宏科技、东软、华云、新浪、三一重工、华夏银行、四川航空、国药集团、微众银行、紫金保险、去哪儿网、中通、中国人民银行、中国银行、中国人保寿险、中国太平保险、中国移动、中国联通、中国电信、天翼云、中移金科、Radore、ZaloPay 等海内外数万家企业采用。KubeSphere 提供了开发者友好的向导式操作界面和丰富的企业级功能,包括 Kubernetes 多云与多集群管理、DevOps (CI/CD)、应用生命周期管理、边缘计算、微服务治理 (Service Mesh)、多租户管理、可观测性、存储与网络管理、GPU support 等功能,帮助企业快速构建一个强大和功能丰富的容器云平台。
相关文章:
云原生周刊:K8s 中的 GPU 共享
开源项目推荐 A2A Google 的 Agent2Agent(A2A)协议是一个开源标准,旨在促进不同框架和供应商构建的 AI 代理之间的互操作性。它允许代理通过统一的协议安全地交换信息、协同执行任务,并在多种企业平台和云环境中无缝协作。 A2A…...
(五)机器学习---决策树和随机森林
在分类问题中还有一个常用算法:就是决策树。本文将会对决策树和随机森林进行介绍。 目录 一.决策树的基本原理 (1)决策树 (2)决策树的构建过程 (3)决策树特征选择 (4࿰…...
DeepReaserch写的文献综述示例分享
目录 DeepReaserch提供的文献综述: 人工智能在医疗影像诊断中的研究进展综述(2015–2025) 引言 1 近十年研究进展回顾 1.1 深度学习崛起阶段(2015–2017年) 1.2 方法完善与临床初探(2018–2020年&…...
Token安全存储的几种方式
文章目录 1. EncryptedSharedPreferences示例代码 2. SQLCipher示例代码 3.使用 Android Keystore加密后存储示例代码1. 生成密钥对2. 使用 KeystoreManager 代码说明安全性建议加密后的几种存储方式1. 加密后采用 SharedPreferences存储2. 加密后采用SQLite数据库存储1. Token…...
阶段性使用总结-通义灵码
序言 前段时间用通义灵码,参加了下数字中国闽江流域的比赛。https://www.dcic-china.com/competitions/10173 最后成绩一般般,106名,大概有2000多人参加这题目,估计有一堆小号。 按照下面这个思路建模的,迭代了大概15…...
SpringBoot 与 Vue3 实现前后端互联全解析
在当前的互联网时代,前后端分离架构已经成为构建高效、可维护且易于扩展应用系统的主流方式。本文将详细介绍如何利用 SpringBoot 与 Vue3 构建一个前后端分离的项目,展示两者如何通过 RESTful API 实现无缝通信,让读者了解从环境搭建、代码实…...
Flutter 图标和按钮组件
引言 在 Flutter 应用开发中,图标和按钮是构建用户界面不可或缺的元素。图标能够以直观的图形方式传达信息,增强应用的视觉吸引力;而按钮则是用户与应用进行交互的重要途径。本文将详细介绍 Flutter 中图标和按钮组件的使用,涵盖…...
大模型平台Dify工作流高效调用Ragflow知识库,解决其原生知识库解析和检索能力不足的问题
Dify调用Ragflow知识库的详细步骤,安装详细部署在我之前文章 多图超详细:Docker安装知识库AI客服RAGFlow的详细步骤、使用教程及注意事项:。超详细:Dify大语言模型工作流开发平台的安装与使用,deepseek知识库客服等。…...
数据库的基本原则
数据库的核心原则 原子性与持久性:原子性(Atomicity)确保一个事务中的所有操作要么全部完成,要么完全不执行,不会出现部分完成的情况。持久性(Durability)则保证一旦事务提交成功,即…...
项目集管理汇报报告 (范本)
该文档适用于企业管理层、项目经理、项目团队成员以及对项目集管理感兴趣的人员。它对企业项目管理至关重要,通过全面分析 揭示了如目标达成率低、数据缺失严重、成本进度管控有风险等关键问题,为管理层提供决策依据,助力其了解项目整体状况&…...
阿里云 MSE Nacos 发布全新“安全防护”模块,简化安全配置,提升数据保护
作者:张文浩 阿里云在其微服务引擎(MSE)注册配置中心 Nacos 上正式推出全新“安全防护”功能模块,旨在帮助企业用户有效管理安全状态和降低开启安全相关功能的学习成本,提升微服务架构的安全性。首期推出的“安全防护…...
Pydantic v2 的使用
一、前言 Pydantic 是一个 Python 数据验证 和 设置管理 库,使用 Python 类型 注解。具有以下特点: 1.1 核心功能 数据验证:自动验证数据类型和约束条件类型转换:自动将输入数据转换为声明类型Schema 生成:自动生成…...
从零开始学A2A二 : A2A 协议的技术架构与实现
A2A 协议的技术架构与实现 学习目标 技术架构掌握 深入理解 A2A 协议的分层架构设计掌握各层次的功能和职责理解协议的工作原理和数据流 实现能力培养 能够搭建基本的 A2A 服务端掌握客户端开发方法实现智能体间的有效通信 架构设计理解 理解与 MCP 的本质区别掌握多智能体协…...
设计模式每日硬核训练 Day 12:装饰器模式(Decorator Pattern)完整讲解与实战应用
🔄 回顾 Day 11:适配器模式小结 在 Day 11 中,我们学习了适配器模式(Adapter Pattern): 用于将“不兼容”的接口适配为目标接口,解决新旧系统之间的桥接问题。强调“接口兼容、外部桥接”&…...
[CMake] CMakePresets.json简单使用
解决的问题 CMakePresets.json是为了解决在使用命令行编译使用CMake的项目时,可能会十分麻烦。如类似的参数-DCMAKE_BUILD_TYPEDebug所以有了CMakePresets.json来配置configure和build时的命令,然后在使用时 cmake --preset<configure-preset-name&…...
智能办公如何创建e10流程
智能办公如何创建e10流程 配置e10流程前,您要做的事情: 1、进入e10管理后台,创建应用,开放接口权限;2、进入e10管理后台,配置千里聆套件,配置同步人员;3、进入千里聆系统ÿ…...
Mac关闭sip方法
Mac关闭sip方法 导航 文章目录 Mac关闭sip方法导航完整操作流程图详细步骤 完整操作流程图 这东西是我在网上搬运下来的,但是我在为业务实操过程中,根据实操情况还是有新的注意点的 详细步骤 1.在「关于本机」-「系统报告」-「软件」;查看SIP是否开启…...
Flutter 播放利器:`media_kit` 的详细介绍与使用指南
在 Flutter 项目中实现音视频播放,开发者过去主要依赖如 video_player、just_audio 等第三方库,但这些库或多或少存在一些局限性,比如平台兼容性差、定制能力不足、播放格式有限等问题。 而 media_kit 是近年崛起的一款全平台音视频播放解决…...
GEO优化中的关键底座:知识图谱如何提升生成式AI的准确性与实时性?
今天,我将与大家分享如何通过GEO优化(生成式人工智能优化)和动态知识图谱,帮助企业提升智能化水平并实现高效的业务运营。首先,GEO优化利用生成式AI为企业提供内容生成、客服自动化和智能销售等服务,而知识…...
案例 - 登录认证:保障系统安全访问的实现
摘要:本文介绍了为Tlias智能学习辅助系统添加登录认证功能的过程,涵盖从需求分析、接口文档设计,到思路分析、功能开发以及最后的测试等多个关键环节,旨在实现只有通过登录认证的用户才能安全访问后台系统功能的目标。 关键词&am…...
Node.js Session 原理简单介绍 + 示例代码
目录 ✅ Session 原理简要说明 🧩 示例项目 - 使用 Node.js Express 实现简单 Session 登录 📁 文件结构 🔹 server.js (JavaScript) 🔸 index.html (HTML) ▶️ 程序运行步骤 ✅ 程序运行效果 🎯 总结 在 We…...
C# 类型、存储和变量(C#程序是一组类型声明)
本章内容 C#程序是一组类型声明 类型是一种模板 实例化类型 数据成员和函数成员 预定义类型 用户定义类型 栈和堆 值类型和引用类型 变量 静态类型和dynamic关键字 可空类型 C#程序是一组类型声明 如果广泛地描述C和C程序源代码的特征,可以说C程序是一组函数和数据…...
复变函数摘记3
复变函数摘记3 5. 留数5.1 可去奇点、极点、本性奇点5.2 零点与极点的关系5.3 在无穷远点处的情形5.4 留数 5. 留数 \quad 如果函数 f ( z ) f(z) f(z) 在 z 0 z_0 z0 及 z 0 z_0 z0 的邻域内处处可导,那么称 f ( z ) f(z) f(z) 在点 z 0 z_0 z0 处解析。…...
深入定制 QSlider——实现精准点击跳转与拖拽区分
在使用 Qt 编写界面应用时,QSlider 是一个常用的滑动控件。但你可能会注意到,默认情况下点击滑轨(groove)区域时,滑块并不会直接跳到鼠标点击的位置,而是按照内部的分页步进(page step)行为响应。此外,垂直 Slider 在点击最底部时还存在 releaseEvent(或 sliderRelea…...
Summary
一、数据结构 1.1 哈希 主要是HashMap和HashSet;其中HashSet底层是一个HashMap属性。 // 获取HashMap元素,HashSet均不支持 map.keySet (); // Set<k> map.values (; // Collection<V> map.entrySet();//Set<Map.Entry<K,V>> for (Map.E…...
MCP Server 开发实战 | 大模型无缝对接 Grafana
前言 随着大模型的飞速发展,越来越多的 AI 创新颠覆了过往很多产品的使用体验。但你是否曾想过,在向大型语言模型提问时,它能否根据你的需求精准返回系统中的对应数据?例如,当用户查询 Grafana 服务时,模型…...
【ROS2】行为树 BehaviorTree(六):各种各样的节点
1、装饰器节点 Decorators 1)否操作 Inverter 如果子项失败则返回 SUCCESS,如果子项成功则返回 FAILURE。 如果子节点返回 RUNNING,则该节点也返回 RUNNING。 2)强制成功 ForceSuccess 如果子节点返回 RUNNING,则该节点也返回 RUNNING。 否则,它总是返回 SUCCESS。 3)…...
Docker Swarm 集群使用指南概述
概述 对于简单轻量级集群管理,利用 Docker Swarm 就够用了,适合中小型应用程序的容器编排。如果是比较重的中心化集群管理方案或需要更复杂的功能,可以考虑使用 Kubernetes Helm Consul 等更强大的容器编排工具。 Docker Swarm 1. Docke…...
【行业树选择器组件:基于Vue3与Element Plus的高性能树形选择组件优化与重构】
行业树选择器组件:基于Vue3与Element Plus的高性能树形选择组件优化与重构 组件概述与背景 行业树选择器是一个基于Element Plus的ElTreeSelect封装的业务组件,主要应用于能源管理系统中,用于展示和选择国标行业分类体系的四级层级结构。该…...
PasteForm框架开发之Entity多级嵌套的表单的实现
你相信么,使用PasteForm框架开发,管理端居然不要写代码!!! 一起来看看PasteForm是否支持多级表模式(外表) 需求假设 假如有这么一个需求,就是订单表,包含了多级的信息,比如这个订单包含了哪些…...
Anaconda笔记
下载Anaconda 清华源 官方源 本文下载:Anaconda3-2024.10-1-Windows-x86_64.exe 建议不要安装到C盘,我的安装到D:Anaconda目录 设置环境变量 WinR cmd命令行输入: conda --version:可以查看到版本信息安装成功c…...
Linux——共享内存
目录 一、共享内存概念 二、共享内存的一些函数 2.1 shmget 创建共享内存 2.2 shmat 访问共享内存 2.3 shmdt 解除共享内存的映射 2.4 shnctl 删除共享内存段 三、共享内存 3.1 创建测试进程 3.2 使用循环测试 编辑 3.3 共享内存写入程序 3.4 带有信号量的共享内…...
计算机系统---烤机(性能测评)
计算机烤机 一、烤机的定义与核心目的 烤机(Burn-in Test) 是通过对计算机硬件施加持续高负载,模拟极端运行环境,以验证硬件稳定性、性能极限、散热能力及潜在缺陷的测试方法。核心目标包括: 硬件稳定性验证&#x…...
Linux命令+Git命令
Linux命令Git命令 linux查看两个操作系统cd命令的区别操作文件和文件夹vim不同模式保存和退出 Git linux Linux操作系统中,几乎所有的东西都以文件夹或文件形式存在,这些文件夹/文件有一个共同的根目录/。如果我们在某块磁盘A上(无其他分区&…...
【前端】Nuxt打包部署的几种方式
一、总结知识点 Nuxt 是基于 Vue 的服务端渲染框架,部署方式主要取决于你使用的 Nuxt 模式:Universal (SSR)、SPA 或 Static Site Generation (SSG)。不同模式下的打包部署流程略有不同。以下将分别介绍 Nuxt 应用的打包和部署方式。 二、详细说明 1. …...
DP 16bit位宽数据扰码实现和仿真
DisplayPort 1.4协议中数据需进行扰码,扰码用到了16-bit LFSR,表达式如下。 LFSR每移位8个bit后,用最高有效 8 位以相反的位顺序与一个字节数据进行异或从而实现数据加扰/解扰。 我们已利用这个框图进行8个时钟周期迭代,得到了和…...
力扣每日打卡 1534. 统计好三元组 (简单)
力扣 1534. 统计好三元组 简单 前言一、题目内容二、解题方法1. 暴力解法2.官方题解2.1 方法一:枚举2.2 方法二:枚举优化 前言 这是刷算法题的第十二天,用到的语言是JS 题目:力扣 1534. 统计好三元组 (简单) 一、题目内容 给你一…...
CExercise_13_1排序算法_1插入排序
题目: 请自己手动实现插入排序算法: // 插入排序 void insertion_sort(int arr[], int len); 然后给定一个int数组,实现将它从小到大进行排序。 关键点 分析: 在插入排序中,稳定性指的是排序算法能够保持相等元素的原始…...
图论--DFS搜索图/树
目录 一、图的存储结构 二、题目练习 846. 树的重心 - AcWing题 dfs,之前学习的回溯算法好多都是用dfs实现搜索的(把题目抽象成树形结构来搜索),其实 回溯算法就是 深搜,只不过针对某一搜索场景 我们给他一个更细分…...
blender 超逼真角色daz 纹理材质 humanpro插件
https://www.youtube.com/KhanhVo-zp9lh/featured https://superhivemarket.com/products/humanpro https://superhivemarket.com/products/humanpro HUMANPRO 插件 - BLENDER HumanPro 是一款专为帮助用户轻松快速地创建高度精细逼真的人体皮肤纹理和复杂皱纹而设计的插件…...
关于响应式编程框架ReactiveUI的感悟
1.我第一个接触的MVVM框架是Caliburn Micro,后来接触到了ReactiveUI这种响应式编程思想的框架,主要说一下本人目前学习感想(针对尽快上手使用MVVM开发WPF); 首当其冲的工具是DeepSeek,总结好问题直接提问&…...
Swift —— delegate 设计模式
一、什么是 delegate 模式 所谓 delegate 就是代理模式。简单来说,delegate 模式就是在类的函数里运行完一段代码后,你可以通过一个符合某个代理协议的属性来调代理的方法。其中,代理方法就是回调函数。 二、delegate 模式与闭包比的优势 …...
远方游子的归家记:模仿美食网页的制作与实现
前言 2023年的夏天,闲得无聊学了一个礼拜前端知识点。并根据所学知识点模仿制作了一篇网络上公开发布的关于家乡美食的文章。今天才想到有这个不错的案例可以分享出来,以供大家学习参考。 知识点简介 运用的知识点比较简单,常规的div盒子&…...
React JSX?
JSX JSX 是 JavaScript XML 的缩写,它是一种 JavaScript 的语法扩展,允许你在 JavaScript 中写 HTML 类似的代码,常用于 React 中定义 UI 组件的结构。 JSX 示例代码: import React from react;function App() {return (<di…...
【Pandas】pandas DataFrame iterrows
Pandas2.2 DataFrame Indexing, iteration 方法描述DataFrame.head([n])用于返回 DataFrame 的前几行DataFrame.at快速访问和修改 DataFrame 中单个值的方法DataFrame.iat快速访问和修改 DataFrame 中单个值的方法DataFrame.loc用于基于标签(行标签和列标签&#…...
docker多架构镜像构建
docker多架构镜像构建 Docker 多架构镜像构建(Multi-Architecture Image Build)允许你为不同平台(如 linux/amd64, linux/arm64, linux/arm/v7 等)构建和推送统一的镜像标签,解决在不同硬件架构之间部署的问题。 Doc…...
日志查询 Less命令:/搜索
跟more命令一样,唯一不同的是less命令可以向上翻页,但是more命令不行 注意:按空格或F -- 进行翻页; 按回车 -- 一行一行往下翻; 按q或Q – 表示退出 Page up:一页一页向上翻; 向上键:一行一行…...
[MySQL] 事务管理(一) 事务的基本概念
1.为什么需要事务 1.1 CURD不加控制会有什么问题 我认为要解决上面的问题,CURD必须要有以下的属性 买票的过程必须是原子的 买票相互之间不可以收到影响 买完票需要永久有效 买前,买后的状态必须是确定的 2. 什么是事务? 事务就是一组DML语…...
rk3588 驱动开发(一)字符设备开发
3.字符设备驱动开发 3.1 什么是字符设备驱动 字符设备:就是一个个字节,按照字节流进行读写操作的设备,读写是按照先后顺序的。 举例子:IIC 按键 LED SPI LCD 等 Linux 应用程序调用驱动程序流程: Linux中驱动加载成功…...
【第45节】windows程序的其他反调试手段上篇
目录 引言 一、通过窗口类名和窗口名判断 二、检测调试器进程 三、父进程是否是Explorer 四、RDTSC/GetTickCount时间敏感程序段 五、StartupInfo结构的使用 六、使用BeingDebugged字段 七、 PEB.NtGlobalFlag,Heap.HeapFlags,Heap.ForceFlags 八、DebugPort:CheckRem…...