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

    【D2RQ】:D2RQ Mapping Language

    map:Papers; d2rq:property :authorName; d2rq:column "Persons.Name"; d2rq:join "Papers.PaperID __label a d2rq:PropertyBridge; d2rq:belongsToClassMap map:papers; d2rq:property rdfs:label; d2rq __label a d2rq:PropertyBridge; d2rq:belongsToClassMap map:persons; d2rq:property rdfs:label; d2rq __label a d2rq:PropertyBridge; d2rq:belongsToClassMap map:topics; d2rq:property rdfs:label; d2rq 参考: D2RQ: http://d2rq.org/ The D2RQ Mapping Language: http://d2rq.org/d2rq-language neosemantics

    1.8K20发布于 2021-09-02
  • 来自专栏七月的夏天的博客

    rq添加了RedisCluster支持

    近期在看rq的时候,发现rq支持custom worker class,于是我就改了改,让它也支持custom connection class,并说服了作者merge进来。 https://github.com/nvie/rq/pull/741 不过其实我觉得还是略别扭。

    25410编辑于 2023-12-18
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】调度器 ⑥ ( task_woken 函数 | set_cpus_allowed 函数 | rq_online 函数 | rq_offline 函数 )

    文章目录 一、task_woken 函数 ( 唤醒阻塞进程 ) 二、set_cpus_allowed 函数 ( 修改进程在 CPU 中的亲和力 ) 三、rq_online 函数 ( 启动执行队列 ) 四 、rq_offline 函数 ( 禁止执行队列 ) Linux 内核源码 linux-5.6.18\kernel\sched\sched.h 中 , 定义的 struct sched_class 调度类结构体 ; 执行队列 是一个 红黑树 ; void (*rq_online)(struct rq *rq); 源码路径 : linux-5.6.18\kernel\sched\sched.h#1737 ; 四、 rq_offline 函数 ( 禁止执行队列 )---- sched_class 调度类结构体 中的 rq_offline 函数指针 , 指向一个函数 , 调用该函数 , 可以 禁止 执行队列 ; 进程 是一个 调度实体 ; 执行队列 是一个 红黑树 ; void (*rq_offline)(struct rq *rq); 源码路径 : linux-5.6.18\kernel\sched\sched.h

    58620编辑于 2023-03-30
  • 来自专栏idba

    轻量级分布式任务调度系统-RQ

    就目前而言有三套成熟的工具celery,huey ,rq 。按照功能和使用复杂度来排序的话也是 celery>huey>rq. 因为rq 简单,容易上手,所以自己做的系统也会使用RQ作为分布式任务调度系统。 二 安装 因为RQ 依赖于Redis 故需要安装版本>= 2.6.0.具体安装方法请参考《Redis初探》。 *nix 系统环境下安装RQ: pip install rq 无需其他配置即可以使用RQ。 三 原理 RQ 主要由三部分构成 Job ,Queues,Worker 构成。 其定义位于rq.job文件中,可以去查看一下它的API,主要用到的API有: >>> from rq import job >>> job = q.enqueue(hello,'youzan.com 五 参考文章 [1] 官方文档 [2] 翻译 - Python RQ Job [3] 翻译 - Python RQ Workers [4] 云峰就她了 这位博主写了很多rq相关的实践经验,值得参考

    2.7K30发布于 2018-08-09
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】调度器 ⑤ ( put_prev_task、set_next_task 函数 | select_task_rq 函数 | migrate_task_rq 函数 )

    文章目录 一、put_prev_task、set_next_task 函数 ( 进程放入执行队列 ) 二、select_task_rq 函数 ( 为进程选择 CPU ) 三、migrate_task_rq , 调用该函数 , 可以将 " 进程 " , 加入到 " 执行队列 " 中 ; 进程 是一个 调度实体 ; 执行队列 是一个 红黑树 ; void (*put_prev_task)(struct rq *rq, struct task_struct *p); void (*set_next_task)(struct rq *rq, struct task_struct *p, bool first 调度类结构体 中的 select_task_rq 函数指针 , 指向一个函数 , 调用该函数 , 可以为 " 进程 " 选择 合适的 CPU 执行 ; 进程 是一个 调度实体 ; 执行队列 是一个 红黑树 ; int (*select_task_rq)(struct task_struct *p, int task_cpu, int sd_flag, int flags); 源码路径 : linux-

    59310编辑于 2023-03-30
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】实时调度类 ④ ( 实时运行队列 rt_rq 源码分析 | 实时运行队列 rt_rq 结构体字段分析 | active、rt_nr_running、curr、next 字段 )

    文章目录 一、实时运行队列 rt_rq 源码 二、实时运行队列 rt_rq 结构体字段分析 1、active 字段 2、rt_nr_running 字段 3、curr 字段 4、next 字段 一、实时运行队列 on which this entity is (to be) queued: */ struct rt_rq *rt_rq; // 表示 " 实时调度实体 " 所属的 " 实时运行队列 " /* rq "owned" by this entity/group: */ struct rt_rq *my_q; // 表示 " 实时调度实体 " 所拥有的 " 实时运行队列 " , 用于管理 " 子任务 " #endif } __randomize_layout; 其中的 rt_rq 和 my_q 字段 , 分别表示一个 " 实时运行队列 " , 是 rt_rq 结构体类型的 ; rt_rq *rq; struct task_group *tg; #endif }; 二、实时运行队列 rt_rq 结构体字段分析 ---- 1、active 字段 " 实时运行队列 " rt_rq 结构体中的

    89630编辑于 2023-03-30
  • 来自专栏CSDN旧文

    图论--2-SAT--暴力染色法模板(字典序最小解) RQ的板子

    //暴力DFS,求字典序最小的解,也是求字典序唯一的方法 #include<cstdio> #include<cstring> #include<vector> using namespace std; const int maxn=10000+10; struct TwoSAT { int n;//原始图的节点数(未翻倍) vector<int> G[maxn*2];//G[i]==j表示如果mark[i]=true,那么mark[j]也要=true bool mark[maxn*

    47010发布于 2020-10-28
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】调度器 ② ( sched_class 调度类结构体源码 | 源码路径 linux-5.6.18\kernel\sched\sched.h )

    int flags); void (*yield_task) (struct rq *rq); bool (*yield_to_task)(struct rq *rq, struct task_struct struct task_struct *(*pick_next_task)(struct rq *rq); void (*put_prev_task)(struct rq *rq, struct task_struct (*balance)(struct rq *rq, struct task_struct *prev, struct rq_flags *rf); int (*select_task_rq)(struct (*rq_offline)(struct rq *rq); #endif void (*task_tick)(struct rq *rq, struct task_struct *p, int queued )(struct rq *rq, struct task_struct *task); void (*update_curr)(struct rq *rq); #define TASK_SET_GROUP

    88730编辑于 2023-03-30
  • 来自专栏Linux内核深入分析

    CFS调度主要代码分析一

    *cfs_rq) { struct sched_entity *curr = cfs_rq->curr; u64 now = rq_clock_task(rq_of(cfs_rq)); u64 *cfs_rq; struct sched_entity *se = &p->se, *curr; struct rq *rq = this_rq(); struct rq_flags rf; rq_lock(rq, &rf); update_rq_clock(rq); cfs_rq = task_cfs_rq(current); curr = cfs_rq->curr; if static void enqueue_task_fair(struct rq *rq, struct task_struct *p, int flags) { struct cfs_rq *cfs_rq *rq, struct task_struct *prev, struct rq_flags *rf) { struct cfs_rq *cfs_rq = &rq->cfs; struct sched_entity

    2.7K31发布于 2020-03-24
  • 来自专栏Linux内核深入分析

    CFS调度主要代码分析二

    *rq = cpu_rq(cpu); struct task_struct *curr = rq->curr; struct rq_flags rf; sched_clock_tick(); rq_lock(rq, &rf); update_rq_clock(rq); curr->sched_class->task_tick(rq, curr, 0); cpu_load_update_active (rq); calc_global_load_tick(rq); psi_task_tick(rq); rq_unlock(rq, &rf); perf_event_task_tick(); (se) { cfs_rq = cfs_rq_of(se); entity_tick(cfs_rq, se, queued); } if (static_branch_unlikely(& = cpu_rq(cpu); prev = rq->curr; if (!

    1.4K10发布于 2020-03-24
  • 来自专栏NLP/KG

    从零开始构建一个电影知识图谱,实现KBQA智能问答下篇:Apache jena SPARQL endpoint及推理、KBQA问答Demo超详细教学

    d2rq/d2rq-0.8.1/kg_demo_movie.nt#genre/80 file:///D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/9470 :/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/9470 http://www.kgdemo.com#hasActor file:///D:/d2rq/d2rq D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#person/83635 file:///D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/ D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/9470 http://www.kgdemo.com#hasActor file:///D:/d2rq/d2rq D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#person/1287732 file:///D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie

    1.1K21编辑于 2023-07-11
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】实时调度类 ⑤ ( 实时调度类 rt_sched_class 源码分析 | 结构体字段及函数指针分析 )

    rq_online_rt, .rq_offline = rq_offline_rt, .task_woken = task_woken_rt, .switched_from 函数 | migrate_task_rq 函数 ) 【Linux 内核】调度器 ⑥ ( task_woken 函数 | set_cpus_allowed 函数 | rq_online 函数 | rq_offline *rq) { requeue_task_rt(rq, rq->curr, 0); } 参考资料 : 【Linux 内核】调度器 ④ ( sched_class 调度类结构体分析 | yield_task sched_rt_runnable(rq)) return NULL; p = _pick_next_task_rt(rq); set_next_task_rt(rq, p, true); *rq, struct task_struct *p) { update_curr_rt(rq); update_rt_rq_load_avg(rq_clock_pelt(rq), rq, 1)

    1.4K10编辑于 2023-03-30
  • 来自专栏AIGC 先锋科技

    字节提出 NEST-RO,语音自我监督预训练的下一个令牌预测 !

    在与BEST-RQ的大型数据集上的比较中,与BEST-RQ相比,提出的NEST-RQ在非流式自动语音识别(ASR)上达到可比的性能,并在流式ASR上实现更好的性能。 在非流式 ASR 任务上,NEXT-RQ 与 BEST-RQ 达到可比性能;在流式 ASR 任务上,NEXT-RQ 超越了 BEST-RQ。 在非流式ASR中,BEST-RQ和NEST-RQ表现相当,而在流式ASR中,NEST-RQ超越了BEST-RQ。 NEST-RQ比BEST-RQ有几个优势: 1) 在训练期间,NEST-RQ比BEST-RQ更有效率,因为BEST-RQ仅在掩盖的段落上进行预测;2) NEST-RQ由于使用因果编码器,可以更好地适应 最后但并非最不重要的是,NEST-RQ继承了BEST-RQ的简单性。在后续实验中,除非特别指明,BEST-RQ都配备了NC-A和NC-C。 此外,作者在表2中研究了NEST-RQ中预测标记数的影响。

    60610编辑于 2024-10-14
  • 来自专栏linux驱动个人学习

    Linux CFS调度器之队列操作--Linux进程的管理与调度(二十七)

    *rq, struct task_struct *p, int flags) { struct cfs_rq *cfs_rq; struct sched_entity *se = &p (se) { cfs_rq = cfs_rq_of(se); cfs_rq->h_nr_running++; if (cfs_rq_throttled( = cfs_rq->curr) __enqueue_entity(cfs_rq, se); se->on_rq = 1; if (cfs_rq->nr_running = cfs_rq_of(se); cfs_rq->h_nr_running--; if (cfs_rq_throttled(cfs_rq)) = cfs_rq->curr) __dequeue_entity(cfs_rq, se); se->on_rq = 0; account_entity_dequeue(cfs_rq

    3.3K31发布于 2018-12-12
  • 来自专栏HD-学习笔记

    ucore-lab6

    rq; rq->proc_num ++;}//将进程添加至队列,static voidRR_dequeue(struct run_queue *rq, struct proc_struct *proc list_empty(&(proc->run_link)) && proc->rq == rq); list_del_init(&(proc->run_link)); rq->proc_num proc->rq = rq; rq->proc_num ++;}static voidstride_dequeue(struct run_queue *rq, struct proc_struct run_queue *rq, struct proc_struct *proc) { rq->lab6_run_pool = skew_heap_insert(rq->lab6_run_pool, &( ) { proc->time_slice = rq->max_time_slice; } proc->rq = rq; rq->proc_num += 1;}static

    59940编辑于 2023-02-22
  • 来自专栏机器之心

    39亿参数模型公开可用,采样速度7倍提升,残差量化生成图片入选CVPR'22

    对于 RQ-Transformer 的输入,该研究首先将 RQ-VAE 中的量化特征映射转换为特征向量序列;然后,RQ-Transformer 预测下一个 D 编码,以估计下一个位置的特征向量。 由于 RQ-VAE 降低了特征图的分辨率,RQ-Transformer 可以显着降低计算成本并轻松学习输入的远程交互。 对于残差量化,研究者没有增加编码簿大小,而是采用残差量化(RQ)来离散化向量 z。给定一个量化深度 D,RQ 将 z 表示为一个有序的 D 码,如下公式(3)所示。 RQ-VAE。 在上图 2 中,研究者提出 RQ-VAE 来精确量化图像的特征图。RQ-VAE 也是由 VQ-VAE 的编解码器架构组成,不过 VQ 模块被上面的 RQ 模块所取代。 阶段 2:RQ-Transformer 研究者展示了 RQ-Transformer 如何自回归地预测 RQ-VAE 的代码堆栈。

    81930编辑于 2022-03-28
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核】实时调度类 ⑦ ( 实时调度类核心函数源码分析 | dequeue_task_rt 函数 | 从执行队列中移除进程 )

    , p); 作用是 将 进程 从 哈希表 中删除 ; dequeue_task_rt 函数源码 : static void dequeue_task_rt(struct rq *rq, struct task_struct *rq) { struct task_struct *curr = rq->curr; struct sched_rt_entity *rt_se = &curr->rt; u64 delta_exec = &rt_sched_class) return; now = rq_clock_task(rq); delta_exec = now - curr->se.exec_start; if rt_bandwidth_enabled()) return; for_each_sched_rt_entity(rt_se) { struct rt_rq *rt_rq = rt_rq_of_se (rt_rq)) resched_curr(rq); raw_spin_unlock(&rt_rq->rt_runtime_lock); } } } 源码路径 : linux-5.6.18

    70320编辑于 2023-03-30
  • 来自专栏Linux内核远航者

    深入理解Linux内核之进程睡眠(上)

    0 : TASK_ON_RQ_MIGRATING; //设置任务的on_rq 为0 标识是睡眠 dequeue_task(rq, p, flags); ->p->sched_class = cfs_rq->curr) //不是cpu当前 任务 __dequeue_entity(cfs_rq, se); //cfs运行队列删除 cfs运行队列的最小虚拟运行时间 deactivate_task会设置任务的on_rq 为0来 标识是睡眠 ,然后 调用到调度类的dequeue_task方法,在cfs中设置se->on_rq 注意:1.这里的删除指的是设置对应标志如p->on_rq=0,se->on_rq = 0,当选择下一个任务的时候不会在加入运行队列中。2.即将睡眠的任务是cpu上的当前任务(curr指向)。 (cfs_rq, se); 主要看下put_prev_task: put_prev_task ->prev->sched_class->put_prev_task(rq, prev)

    1.9K20发布于 2021-08-06
  • 来自专栏NLP/KG

    从零开始构建一个电影知识图谱,实现KBQA智能问答:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学

    /D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/79> . /D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/79> . /D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/79> . /D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/79> . D:/d2rq/d2rq-0.8.1/kg_demo_movie.nt#movie/82> . kg_demo_movie.nt 中关于电影的片段: <file:///D:/d2rq/d2rq-0.8.1

    1.8K11编辑于 2023-07-11
  • 来自专栏AIoT技术交流、分享

    车载T-BOX中MCU和SoC通信方案(SPI通信方式)

    主设备主动通信机制如图所示: 通信机制解析: 当主设备有数据需要主动发送给从设备时,主设备需要发送M_RQ请求(拉高M_RQ引脚,高电平维持至少1ms); 从设备接收到主设备M_RQ信号(触发上升沿中断 )后,准备SPI通信的配置和数据,准备完成后,发送S_RQ信号(拉高S_RQ引脚,高电平维持至少1ms); 主设备接收到从设备S_RQ信号(触发上升沿中断)后,开始SPI通信。 名词解析: △t1:从设备通信请求最大等待时长500ms(从设备发送S_RQ信号至主设备SPI通信结束释放CS产生的时长),如果超时,从设备会再次发起S_RQ请求信号; △t2:主设备的通信请求最大等待时长 500ms(主设备发送M_RQ信号至从主设备接收到从设备发送S_RQ信号的时长),如果超时,主设备会再次发起M_RQ请求信号。 名词解析: △t1:从设备通信请求最大等待时长500ms(从设备发送S_RQ信号至主设备SPI通信结束释放CS产生的时长),如果超时,从设备会再次发起S_RQ请求信号。

    2K30编辑于 2022-12-29
领券