首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Lauren的FPGA

    用FPGA实现双调排序(4)

    前面三篇文章我们介绍了双调排序的原理和具体实现方式,但都是要求序列本身是“双调”的。而实际情况是,给定序列本身是杂乱无章的,并非呈现“双调”的特征。这就要求我们先把无序序列转化为双调序列。 16点序列转化为双调序列需要3个Stage,其实Stage的个数等于log2(16)-1。每个Stage需要完成一些列的比较,其实就是实现升序和降序排列。 我们将双调序列的排序过程再次呈现出来如下图所示,与本文第一张图片进行对比,可以发现:从“无序”到“双调”是一个序列合并的过程,从“双调”到“单调”是一个序列分割的过程,体现了“分而治之(Divide and

    82610编辑于 2024-04-11
  • 来自专栏Lauren的FPGA

    用FPGA实现双调排序(1)

    典型的排序算法包括冒泡排序、选择排序、插入排序、归并排序、快速排序、希尔排序、计数排序、双调排序等。这其中,双调排序以其高度的并行性著称,非常适合于在FPGA上实现。 双调排序(Bitonic Sort)是数据独立(Data-independent)的排序算法,即比较顺序与数据无关,特别适合并行执行。在了解双调排序算法之前,我们先来看看什么是双调序列。 双调序列(Bitonic Sequence)的定义:双调序列是一个先单调递增后单调递减的序列,即存在两种单独特性,故为“双调”。 需要注意的是完全单调递增或者完全单调递减的序列也是双调序列,例如(0,1,4,5)和(7,5,3)均为双调序列。 双调序列的性质: (1)双调序列的子序列仍为双调序列。 ,…,a[i],b[i+1],…,b[n-1])是一个双调序列 Batcher定理: 若序列S为双调序列,即 令 那么S1和S2仍为双调序列,且S2中的任意一个元素不小于S1中的任意一个元素。

    1.3K10编辑于 2024-03-14
  • 来自专栏Lauren的FPGA

    用FPGA实现双调排序(3)

    基于双调排序算法的蝶形图,我们可以得到地址的变化规律。这里以长度为16的双调序列为例,其地址变化规律入下图所示。由于长度为16,故总共需要4个Stage。 仍以长度为16的双调序列为例,Stage 为0时,延迟级数为8,Stage 为1时,延迟级数为4,Stage为2时,延迟级数为2,Stage为3时延迟级数为1。 在此基础上,将4个SDF相连即可实现串行输入/串行输出的双调排序。下图给出了Stage 0对应的SDF结构。 下图显示了相应的仿真结果。

    53410编辑于 2024-04-11
  • 来自专栏机器学习算法与Python学习

    排序算法 | 双调排序(Bitonic sort)详解与Python实现

    本篇为排序算法系列第二篇,详细讲述双调排序算法。 01 什么是双调排序(Bitonic sort)? 从定义上了解下什么是双调序列(由非严格增序列X和非严格降序列Y所构成的任意组合多属于双调序列),定义如下: 一个序列 a1,a2, …,an 是双调序列,必须满足以下条件: (1)存在一个 ak(1 则得到的MAX和MIN序列仍然是双调序列,并且MAX序列中的任意一个元素不小于MIN序列中的任意一个元素。 其实,到现在还有两个问题: 怎么把普通序列变成双调序列? 怎么对双调序列进行排序? 针对双调序列Z,根据Batcher定理,Z可以划分为2个双调序列X和Y,然后继续对X和Y进行递归划分,得到更短的双调序列,直到得到的子序列长度为1为止。这时的输出序列按单调递增顺序排列。 将两个相邻&单调性相反的单调序列看作一个双调序列, 每次将这两个单调序列merge生成一个新的双调序列, 然后进行双调排序,不断上述过程。

    3.5K30发布于 2021-04-30
  • 来自专栏AutoML(自动机器学习)

    双调排序Bitonic Sort,适合并行计算的排序算法

    1、双调序列 在了解双调排序算法之前,我们先来看看什么是双调序列。 双调序列是一个先单调递增后单调递减(或者先单调递减后单调递增)的序列。 3、双调排序 假设我们有一个双调序列,则我们根据Batcher定理,将该序列划分成2个双调序列,然后继续对每个双调序列递归划分,得到更短的双调序列,直到得到的子序列长度为1为止。 双调排序示意图1: [1wgenlx21s.png] 4、任意序列生成双调序列 前面讲了一个双调序列如何排序,那么任意序列如何变成一个双调序列呢? 和前面sort的思路正相反, 是一个bottom up的过程——将两个相邻的,单调性相反的单调序列看作一个双调序列, 每次将这两个相邻的,单调性相反的单调序列merge生成一个新的双调序列, 然后排序( 同3、双调排序)。

    3.6K11发布于 2019-01-03
  • 来自专栏AutoML(自动机器学习)

    【转载】双调排序Bitonic Sort,适合并行计算的排序算法

    1、双调序列 在了解双调排序算法之前,我们先来看看什么是双调序列。 双调序列是一个先单调递增后单调递减(或者先单调递减后单调递增)的序列。 3、双调排序 假设我们有一个双调序列,则我们根据Batcher定理,将该序列划分成2个双调序列,然后继续对每个双调序列递归划分,得到更短的双调序列,直到得到的子序列长度为1为止。 双调排序示意图[1]: ? 4、任意序列生成双调序列 前面讲了一个双调序列如何排序,那么任意序列如何变成一个双调序列呢? 同3、双调排序)。 所以一般来说,并行计算中常使用双调排序来对一些较小的数组进行排序[3]。 如果要考虑不用padding,用更复杂的处理方法,参考[4] n!=2^k的双调排序网络,本文略。

    3.2K30发布于 2019-01-07
  • 猎豹浏览器双核渲染架构与系统级兼容调优实践

    在Windows10/11彻底移除了独立IE浏览器,且Chrome、Edge无法调取任何ActiveX、BHO组件的现状下,具备Chromium+Trident双核架构的猎豹浏览器,成为了企业保障此类混合渲染业务连续性的核心系统级宿主容器 本文将从双核进程通信与COM沙箱加载机制、企业级策略路由自动化分发、以及VDI(虚拟桌面)环境下的渲染自愈调优出发,分享一系列系统级优化实践。 二、架构解密:双内核渲染引擎的进程隔离与COM容器加载机制猎豹浏览器双核引擎的核心,是在同一个统一的Shell框架进程(主进程)下,隔离、调度两个完全不同的页面渲染进程。 四、虚拟桌面(VDI)与低配主机调优:内存挂起与硬件加速排爆在日常繁杂的办公和测试场景中,多进程沙箱架构会随着打开标签页的增多造成内存(RAM)暴涨。 通过在系统层面对猎豹浏览器的软件源进行安全完整性审计、通过注册表GPO实现内核策略的智能分发、并针对低配与虚拟机VDI环境对内核V8内存和GPU硬件加速进行调优,研发与运维团队能全方位建立起一套健壮、合规且高容错的兼容性宿主环境

    37810编辑于 2026-06-17
  • 移动端代码优化实战:AndroidiOS双端性能调优,解决卡顿、闪退、耗电问题

    今天我们就来分享Android和iOS双端的代码优化实战攻略,针对性解决卡顿、闪退、耗电三大核心问题,让你的APP体验翻倍。 三、双端通用优化技巧:提升APP整体体验除了两端各自的优化技巧,还有一些通用的优化方案,适用于Android和iOS双端,能够进一步提升APP的性能和用户体验:1.图片优化:统一图片格式(如Android 四、实战案例总结我们以一个电商APP为例,对比双端优化前后的核心指标:优化维度Android端(优化前)Android端(优化后)iOS端(优化前)iOS端(优化后)帧率30-40fps(卡顿)稳定60fps -45fps(卡顿)稳定60fps(无卡顿)闪退率1.2%0.1%1.5%0.05%1小时耗电20%5%18%4%启动时间3.5秒1.2秒3.0秒1.0秒包体积80MB45MB75MB40MB优化后,双端 掌握Android和iOS双端的性能优化技巧,针对性解决卡顿、闪退、耗电三大核心问题,才能打造出体验优秀的APP,提升用户留存率和满意度。

    72010编辑于 2026-04-16
  • 来自专栏千帆企业应用连接器

    SAP系统集成难,千帆鹊桥iPaaS来帮忙

    面对海量的订单数据和无意义的重复劳动,作为销售的小张感觉身心俱疲,他也与IT部门反复交涉系统间打通的问题,但是SAP系统集成,谈何容易。 首先,SAP系统接口协议繁杂。 开发者本来就不多,文档更是少的可怜,零基础上手,半个月调通算是非常优秀了。 其次,接口高度定制化。 图形化开发集成流,拖拉拽实现数据映射,在线MOCK调试等功能使SAP集成效率提升5-10倍。「小」团队也能完成「大」集成。

    1.6K51编辑于 2022-01-04
  • 来自专栏注册会计师用 WorkBuddy提升效率

    162 · Python 实战演练:一份示例账套跑通审计版 + 尽调版双报告

    问题前面九篇搭了脚手架,本篇用一份完整示例企业数据,从数据加载→工具箱→风险引擎→报告引擎→尽调模块,全流程跑通,并对比"同一份数据,审计说公允、尽调说审慎"的差异,收官D系列。 fraud"]["明细"])#输出:out/audit_report.docx(审计意见:保留/无保留)#out/dd_report.docx(投资建议:审慎推进/否决)#同一份账套,审计看"错报",尽调看

    13010编辑于 2026-09-14
  • 《双路径开发:Kernel 直调与自定义算子工程的场景适配与效能对比》

    资源占用: Kernel 直调无需框架缓存,显存占用略低(约 5-10%); 自定义算子通过 Workspace 复用与混合精度,显存优化更显著(如 AMP 混合精度使显存占用降低 40%)。 案例参考:DRAFTS 项目先通过 Kernel 直调验证去色散算子性能,再封装为自定义算子集成到完整模型管线。 五、总结 Kernel 直调与自定义算子工程并非对立关系,而是互补的双路径开发模式:前者聚焦 “快速验证”,以开发效率换时间,适合原型阶段;后者聚焦 “生产落地”,以工程化换稳定性与性能上限,适合部署阶段 实际开发中,建议采用 “Kernel 直调验证原型 + 自定义算子工程化落地” 的组合策略,既保证迭代速度,又能满足规模化应用需求。 随着 AI 硬件架构的迭代(如 NPU 专用计算单元、异构存储),自定义算子工程的自动化优化能力(如自动 Tiling、混合精度)将成为效能提升的核心驱动力,而 Kernel 直调仍将作为底层性能调优的关键手段

    38910编辑于 2025-12-24
  • 免代码自动发布的工具:三步实现7×24小时无人值守,实操教程详解

    更别提节假日还要定闹钟爬起来发文,身心俱疲。其实,现在已经有成熟的免代码自动发布工具,只要花10分钟完成三步设置,就能让系统代替你7×24小时自动创作、配图、发布内容。 在了解具体操作前,我们先看一组对比数据:对比项手动发文自动发文工具单篇文章耗时(从写稿到发布)1-3小时5-10分钟(仅需审核)多平台发布操作逐个登录、复制、粘贴、调格式一次配置,全平台一键/定时分发节假日 新手可以先上传5-10篇历史文章测试效果。第二步:创建文章生成规则(免写提示词)很多人用AI写文章最头疼的就是写提示词——既要描述语气、风格,又要规定结构,调半天还不满意。

    35510编辑于 2026-05-27
  • 来自专栏注册会计师用 WorkBuddy提升效率

    170 · Python 报告双出实战:同一份真实数据,审计版 vs 尽调版立场对比

    真实项目里最直观的一课:同一份某新材料公司账套,审计版出"保留/无保留意见",尽调版出"审慎推进/否决建议"——结论口径天然不同。本篇把两份报告的关键段落并排对比。 ReportEngine(sb,risk,"audit")dd=ReportEngine(sb,risk,"dd")print("审计版章节:",audit.AUDIT_SECTIONS)print("尽调版章节 :",dd.DD_SECTIONS)print("共用风险等级:",risk["level"],"风险分:",risk["score"])关键点章节不同:审计版"三表分析/审计意见",尽调版"核查结论/ 结论不同:审计说"错报是否重大",尽调说"值不值、什么价、什么条款",立场分水岭。数据源同:两份报告共用同一risk对象,保证口径一致、不各说各话。小结双报告是工作台最直观的价值证明。 你更常把"双报告"当对内底稿还是对外交付?评论区聊。如果有用,点赞收藏关注,留下你的报告双出难题。下期预告:联动调优(orchestrator阈值校准,让风险等级贴合项目实际)。

    12510编辑于 2026-09-15
  • 来自专栏软件研发

    工作压力管理:应对压力,保持工作与生活的平衡

    为了保持良好的身心健康,我们需要学会管理工作压力,以实现工作与生活的平衡。本文将介绍一些方法和技巧,帮助您应对工作压力,保持良好的工作与生活平衡。1. - 每小时休息5-10分钟,进行眼部放松- 每天晚上保证7-8小时的睡眠- 定期参加健身活动5. 寻找缓解压力的活动寻找一些放松和缓解压力的活动,有助于提高工作与生活的平衡。 例如,阅读、听音乐、户外活动、冥想等都是帮助释放压力和放松身心的有效方法。这些活动可以帮助您恢复精力,更好地应对工作压力。 - 在工作间隙阅读几页书- 每周末去公园散步- 每天晚上进行冥想练习6. 关注自己的身心健康,合理安排工作时间和个人时间,让工作成为人生的一部分,而不是支配生活的全部。希望本文提供的方法和技巧对您有所帮助,提升生活和工作的质量。

    1.3K10编辑于 2023-12-20
  • 来自专栏1000篇核心专访穿透GEO优化的内核

    专访:GEO高级优化师、落地工程师、AIGC应用工程师罗长才

    下面表格梳理身心状态对工程决策的影响。 技术工具是理性,但操作工具永远是人,人的身心状态会穿透到代码、参数、配置当中。 岗位核心工作域输入对象输出交付物典型风险陷阱GEO高级优化师地理数据质量、坐标纠偏、空间匹配规则、地理权重调优POI库、经纬度原始数据、行政区划映射表优化后的地理数据集、匹配阈值参数、离线评测报告陷入内卷 禁止直接进入调参阶段第二步:区分修补与范式重构小缺陷:参数调优、规则修补;根本性缺陷:数据源替换、架构重构是否只在原有框架内做精细化修补,回避高成本重构? 很多团队没有“迭代终止条件”,总想着再调一版更好,于是持续投入人力,陷入内卷。技术优化永远有提升空间,但工程落地要讲边界。

    14210编辑于 2026-10-12
  • 来自专栏注册会计师用 WorkBuddy提升效率

    用 WorkBuddy 把一份账套变成两份报告:审计版 + 尽调版「双出」工作台

    用WorkBuddy把一份账套变成两份报告:审计版+尽调版「双出」工作台话题:#WorkBuddy#AI办公建议归入:财务审计投资尽调行业章节任务卡:一份企业账套(材料)→WorkBuddy跑五段流水线 (步骤)→审计版+尽调版两份docx(可验收产出)一、材料(输入)·验收标准:字段齐全、validate通过客户导出标准财务表,字段名单位缺失项各异。 三、产出(可验收)文件立场章节结论口径out/audit_report.docx审计版审计概况三表分析调整事项/审计意见错报是否重大out/dd_report.docx尽调版标的概况核查结论表外风险/投资建议值不值 审计版说「需补充核查」,尽调版说「审慎推进、估值下调、对赌加兜底」——立场分水岭,正是工作台价值。四、为什么能迁移到其他行业本质:同一份结构化数据源→按不同立场/受众生成多份文档。

    20400编辑于 2026-09-18
  • 来自专栏灯塔大数据

    哈佛研究了76年:什么样的人最可能成为人生赢家?

    主持这项研究的整整 32年的心理学者乔治·瓦利恩特( George Vaillant)说,赢家必须“十项全能”:十项标准里有两条跟收入有关,四条和身心健康有关,四条和亲密关系和社会支持有关。 入选者当年都在19岁上下,全部是家境良好的美国籍白人男性,身心健康,仪表堂堂——事实上,每个入选者都经过严格的体格“选美 ”,研究者倾向于挑选猿臂蜂腰者,因为一开始的猜测是,“富有男性气概者”更可能拥有幸福人生 每隔 5年,会有专业的医师去评估他们的身心健康指标。 每隔 5-10年,研究者还会亲自前去拜访这批人,通过面谈采访,更深入地了解他们目前的亲密关系、事业收入、人生满意度,以及他们在人生的每个阶段是否适应良好。

    1.2K50发布于 2018-04-10
  • 来自专栏若城技术专栏

    64.Harmonyos NEXT 图片预览组件之手势处理实现(二)

    Harmonyos NEXT 图片预览组件之手势处理实现(二) 效果预览 一、双指旋转手势实现(续) 在上一篇文章中,我们介绍了图片预览组件的单指拖动和双指缩放手势实现。 本文将继续介绍双指旋转手势和双击缩放手势的实现细节。 1. 旋转手势处理逻辑 双指旋转手势的核心逻辑包括: RotationGesture({ angle: this.imageRotateInfo.startAngle }) .onActionUpdate 效果展示 实现效果如下: 支持双指旋转,自动对齐到90度倍数 支持双击在1倍和2倍缩放之间切换 支持双指缩放和单指拖动 所有变换都有平滑动画过渡 四、性能优化建议 矩阵计算优化 避免在手势回调中频繁创建新的矩阵对象 setTimeout 合理设置动画时长,建议在100-300ms之间 内存管理 及时清理不再使用的事件监听器 合理使用对象池管理频繁创建的对象 五、注意事项 手势阈值设置 旋转手势的起始角度阈值建议设置在5-

    49900编辑于 2025-03-15
  • 来自专栏harmonyos从入门到精通

    64.Harmonyos NEXT 图片预览组件之手势处理实现(二)

    Harmonyos NEXT 图片预览组件之手势处理实现(二)效果预览一、双指旋转手势实现(续)在上一篇文章中,我们介绍了图片预览组件的单指拖动和双指缩放手势实现。 本文将继续介绍双指旋转手势和双击缩放手势的实现细节。1. 旋转手势处理逻辑双指旋转手势的核心逻辑包括:RotationGesture({ angle: this.imageRotateInfo.startAngle }) .onActionUpdate( 效果展示实现效果如下:支持双指旋转,自动对齐到90度倍数支持双击在1倍和2倍缩放之间切换支持双指缩放和单指拖动所有变换都有平滑动画过渡四、性能优化建议矩阵计算优化避免在手势回调中频繁创建新的矩阵对象考虑使用对象池复用矩阵对象动画性能优化使用 requestAnimationFrame代替setTimeout合理设置动画时长,建议在100-300ms之间内存管理及时清理不再使用的事件监听器合理使用对象池管理频繁创建的对象五、注意事项手势阈值设置旋转手势的起始角度阈值建议设置在5-

    63400编辑于 2025-03-14
  • 来自专栏音视频咖

    腾讯云直播双能力升级:健康报告+监播报告AI解读,开启直播智能运维新时代

    01、创新突破,健康报告重新定义直播流质量管控 直播流分析打分系统,让问题诊断一目了然 作为同类 PaaS 产品中针对直播流的 “智能体检中心”,健康报告从推流、播放、录制、截图、转码、回调、拉流转推 赋能监播报告,复杂数据秒级解读,决策效率快速提升 Agent 模型驱动,让监播报告“会说话” 针对传统监播报告数据量大、解读门槛高的痛点,腾讯云直播全新上线监播报告 AI 解读功能,依托云直播团队深度调优的 03、不止运维,双功能配合解锁多场景应用价值 教育直播:守护教学体验的“质量管家” 在线课堂对直播稳定性要求严苛 —— 延迟超 3 秒会影响师生互动,低帧率则导致板书模糊。 实时监播功能还可以通过智能识别精准拦截线上教学、互动课程中的违规内容,保障学生尤其是未成年人的身心健康。 腾讯云直播始终致力于以技术创新驱动行业升级,本次双能力上线,标志着直播运维从 “经验驱动” 正式迈入 “数据 + AI 双轮驱动” 时代。

    81800编辑于 2025-07-12
领券