草庐IT

微机原理与系统设计笔记8 | 可编程并行接口芯片8255A&&可编程定时器、计时器芯片8253、8254

打算整理汇编语言与接口微机这方面的学习记录。本部分介绍可编程并行接口芯片8255A&&可编程定时器、计时器芯片8253、8254,增加了一些具体系统的设计案例。参考资料西电《微机原理与系统设计》周佳社西交《微机原理与接口技术》课本《汇编语言与接口技术》王让定小甲鱼《汇编语言》Part18255A1.有关并行接口第一章就已经提过,外设和CPU之间不能直接进行数据交换,要增加接口电路,并行接口就是数据在多根线上同时传送。并行接口的特点:具有端口寄存器与CPU和外设进行联络的控制端中断控制端可编程器件提供多种工作方式供编程选择。常用的并行接口芯片是Intel8255A。串行接口芯片是8250和825

微机原理与系统设计笔记8 | 可编程并行接口芯片8255A&&可编程定时器、计时器芯片8253、8254

打算整理汇编语言与接口微机这方面的学习记录。本部分介绍可编程并行接口芯片8255A&&可编程定时器、计时器芯片8253、8254,增加了一些具体系统的设计案例。参考资料西电《微机原理与系统设计》周佳社西交《微机原理与接口技术》课本《汇编语言与接口技术》王让定小甲鱼《汇编语言》Part18255A1.有关并行接口第一章就已经提过,外设和CPU之间不能直接进行数据交换,要增加接口电路,并行接口就是数据在多根线上同时传送。并行接口的特点:具有端口寄存器与CPU和外设进行联络的控制端中断控制端可编程器件提供多种工作方式供编程选择。常用的并行接口芯片是Intel8255A。串行接口芯片是8250和825

[​DuckDB] 多核算子并行的源码解析

DuckDB是近年来颇受关注的OLAP数据库,号称是OLAP领域的SQLite,以精巧简单,性能优异而著称。笔者前段时间在调研Doris的Pipeline的算子并行方案,而DuckDB基于论文《Morsel-DrivenParallelism:ANUMA-AwareQueryEvaluationFrameworkfortheMany-CoreAge》实现SQL算子的高效并行化的Pipeline执行引擎,所以笔者花了一些时间进行了学习和总结,这里结合了MarkRaasveldt进行的分享和原始代码来一一剖析DuckDB在执行算子并行上的具体实现。1.基础知识问题1:并行task的数目由什么决定?

[​DuckDB] 多核算子并行的源码解析

DuckDB是近年来颇受关注的OLAP数据库,号称是OLAP领域的SQLite,以精巧简单,性能优异而著称。笔者前段时间在调研Doris的Pipeline的算子并行方案,而DuckDB基于论文《Morsel-DrivenParallelism:ANUMA-AwareQueryEvaluationFrameworkfortheMany-CoreAge》实现SQL算子的高效并行化的Pipeline执行引擎,所以笔者花了一些时间进行了学习和总结,这里结合了MarkRaasveldt进行的分享和原始代码来一一剖析DuckDB在执行算子并行上的具体实现。1.基础知识问题1:并行task的数目由什么决定?

MySQL 并行复制方案演进历史及原理分析

预告:《MySQL实战》即将出版,敬请关注!有过线上MySQL维护经验的童鞋都知道,主从延迟往往是一个让人头疼不已的问题。不仅仅是其造成的潜在问题比较严重,而且主从延迟原因的定位尤其考量DBA的综合能力:既要熟悉复制的内部原理,又能解读主机层面的资源使用情况,甚至还要会分析binlog。导致主从延迟的一个常见原因是,对于binlog中的事务,从库上只有一个SQL线程进行重放,而这些事务在主库中是并发写入的。就好比你多个人(多线程)挖坑,我一个人(单线程)来填,本来就双拳难敌四手,在你挖坑速度不快的情况下,我尚能应付。一旦你稍微加速,我则力有不逮,只能眼睁睁地看着你挖的坑越来越深。具体在MySQ

MySQL 并行复制方案演进历史及原理分析

预告:《MySQL实战》即将出版,敬请关注!有过线上MySQL维护经验的童鞋都知道,主从延迟往往是一个让人头疼不已的问题。不仅仅是其造成的潜在问题比较严重,而且主从延迟原因的定位尤其考量DBA的综合能力:既要熟悉复制的内部原理,又能解读主机层面的资源使用情况,甚至还要会分析binlog。导致主从延迟的一个常见原因是,对于binlog中的事务,从库上只有一个SQL线程进行重放,而这些事务在主库中是并发写入的。就好比你多个人(多线程)挖坑,我一个人(单线程)来填,本来就双拳难敌四手,在你挖坑速度不快的情况下,我尚能应付。一旦你稍微加速,我则力有不逮,只能眼睁睁地看着你挖的坑越来越深。具体在MySQ

用树莓派集群进行并行和分布式计算

自从树莓派推出以来,创造者们已经在这个简陋的袖珍芯片系统上开展了无数的计算机科学教育项目。其中包括许多探索低成本树莓派集群的项目,以介绍 并行和分布式计算ParallelandDistributedComputing(PDC)概念。英国 开放大学OpenUniversity(OU)为不同年龄、经历和背景的学生提供远程教育,这就提出了一些在更传统的大学中没有面临的问题。开放大学使用树莓派集群向远程教育学生介绍PDC概念的实验始于2019年,并在一篇 ​​学术论文​​ 中进行了介绍,但值得更广泛地了解。该项目使用基于 ​​OctaPi教程​​ 的树莓派集群,该指令由GCHQ在知识共享许可协议下发布

用树莓派集群进行并行和分布式计算

自从树莓派推出以来,创造者们已经在这个简陋的袖珍芯片系统上开展了无数的计算机科学教育项目。其中包括许多探索低成本树莓派集群的项目,以介绍 并行和分布式计算ParallelandDistributedComputing(PDC)概念。英国 开放大学OpenUniversity(OU)为不同年龄、经历和背景的学生提供远程教育,这就提出了一些在更传统的大学中没有面临的问题。开放大学使用树莓派集群向远程教育学生介绍PDC概念的实验始于2019年,并在一篇 ​​学术论文​​ 中进行了介绍,但值得更广泛地了解。该项目使用基于 ​​OctaPi教程​​ 的树莓派集群,该指令由GCHQ在知识共享许可协议下发布

k8s集群Job负载支持多个Pod可靠并发执行,如何权衡利弊选择适合的并行计算模式?

1.简单聊聊你对工作负载Job的理解?在说工作负载Job执行原理之前,先了解下为什么会需要Job负载?对于ReplicaSet、ReplicationController等持久性负载来说,它们的职责是让Pod保存预期的副本数量,稳定持久运行。除非主动去更改模板,进行扩缩操作,否则这些Pod一直持久运行,并且运行的是持久性任务,比如Nginx,MySQL等。同样,任务除了持久任务外,也有非持久任务。那么哪些是非持久任务呢?我们在日常的工作中经常都会遇到一些需要进行批量数据处理和分析、或者是根据时间调度的需求,这些属于短期性质的任务。不需要持久运行,仅执行一次就结束。例如:进行数据库跨库同步,热点

k8s集群Job负载支持多个Pod可靠并发执行,如何权衡利弊选择适合的并行计算模式?

1.简单聊聊你对工作负载Job的理解?在说工作负载Job执行原理之前,先了解下为什么会需要Job负载?对于ReplicaSet、ReplicationController等持久性负载来说,它们的职责是让Pod保存预期的副本数量,稳定持久运行。除非主动去更改模板,进行扩缩操作,否则这些Pod一直持久运行,并且运行的是持久性任务,比如Nginx,MySQL等。同样,任务除了持久任务外,也有非持久任务。那么哪些是非持久任务呢?我们在日常的工作中经常都会遇到一些需要进行批量数据处理和分析、或者是根据时间调度的需求,这些属于短期性质的任务。不需要持久运行,仅执行一次就结束。例如:进行数据库跨库同步,热点