Microsoft PowerPoint - Model Checking a Lazy Concurrent List-Based Set Algorithm.ppt [Compatibility Mode]

Similar documents
Value Chain ~ (E-Business RD / Pre-Sales / Consultant) APS, Advanc

UDC Empirical Researches on Pricing of Corporate Bonds with Macro Factors 厦门大学博硕士论文摘要库

Microsoft PowerPoint - Aqua-Sim.pptx

(Geographic data or geodata ) 30 (Buelher, K and L. Mckee1996) (Open GIS Consortium OGC) OGC GIS Open GIS OGC (Geography Markup Langu

穨423.PDF

Microsoft Word doc

Shanghai International Studies University THE STUDY AND PRACTICE OF SITUATIONAL LANGUAGE TEACHING OF ADVERB AT BEGINNING AND INTERMEDIATE LEVEL A Thes

大 綱 最 有 利 標 目 的 及 類 型 最 有 利 標 之 辦 理 方 式 準 用 最 有 利 標 取 最 有 利 標 精 神 最 有 利 標 之 類 型 及 其 相 關 規 定 適 用 最 有 利 標 準 用 最 有 利 標 及 取 最 有 利 標 精 神 作 業 程 序 及 實 務 分 析

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

Improved Preimage Attacks on AES-like Hash Functions: Applications to Whirlpool and Grøstl

Multi-national Company Operation and Public...

ARCLE No.2

Microsoft Word - Final Exam Review Packet.docx

司 机 看 着 二 十 岁 左 右 的 女 孩 哭 花 了 一 张 脸, 看 看 雨, 又 看 看 她, 想 笑 小 姑 娘, 这 么 大 的 雨, 到 车 里 哭 也 可 以 的 他 好 心 地 建 议 明 靓 忍 不 住 翻 了 下 白 眼, 忿 忿 不 平 地 上 了 车 火 车 站, 唉,

國家圖書館典藏電子全文

附 件 :2015 年 度 普 通 高 等 学 校 本 科 专 业 备 案 和 审 批 结 果 教 育 部 2016 年 2 月 16 日 抄 送 : 国 家 发 展 改 革 委 财 政 部 国 家 卫 生 计 生 委 国 家 中 医 药 管 理 局 部 内 发 送 : 有 关 部 领 导, 办 公

a b

中三級 英國語文科

汉语口语考试

第 153 期 司 律 一 試 Q/A 大 解 惑 講 座 陳 介 中 / 006 司 律 一 試 Q/A 大 解 惑 講 座 苗 星 / 018 律 師 選 試 - 海 洋 法 重 點 概 念 準 備 方 式 與 方 向 名 揚 / 033 電 子 監 控 能 解 決 監 獄 擁

由社會發展趨勢探討國人睡眠品質

上海浦~1

欢迎辞

辉 丰 股 份 重 大 事 项, 特 停 南 方 轴 承 临 时 停 牌 德 力 股 份 临 时 停 牌 瑞 丰 光 电 临 时 停 牌 联 建 光 电 临 时 停 牌 卡 奴 迪 路 临 时 停 牌

日 涨 幅 偏 离 值 达 到 7% 的 前 五 只 证 券 : 温 氏 股 份 ( 代 码 ) 涨 幅 偏 离 值 :11.68% 成 交 量 :1752 万 股 成 交 金 额 : 万 元 机 构 专 用 机 构 专 用

上市公司股东大会投票信息公告( )

东 华 能 源 江 苏 苏 亚 金 诚 已 报 备 因 地 域 及 审 计 时 间 安 排 等 原 因 中 兴 华 已 报 备 客 户 重 新 选 聘 会 计 师 事 务 所 亿 帆 鑫 富 立 信 已 报 备 客

金 利 科 技 临 时 停 牌 凤 凰 光 学 重 要 事 项 未 公 告, 连 续 停 牌 安 源 煤 业 重 要 事 项 未 公 告, 连 续 停 牌 万 泽 股 份 临 时 停 牌 爱 康 科 技 重 大 事 项, 特 停

金 圆 股 份 重 大 事 项, 特 停 长 城 影 视 临 时 停 牌 天 兴 仪 表 临 时 停 牌 商 赢 环 球 重 要 事 项 未 公 告, 连 续 停 牌 荣 安 地 产 临 时 停 牌 中 南 文 化

商 业 城 大 华 标 准 70 万 70 万 驰 宏 锌 锗 瑞 华 标 准 140 万 150 万 亚 星 锚 链 江 苏 公 证 天 业 标 准 80 万 80

金 陵 饭 店 中 兴 华 已 报 备 按 照 国 资 委 要 求 定 期 轮 换 天 衡 已 报 备 按 照 国 资 委 要 求 定 期 轮 换 *ST 中 富 中 喜 已 报 备 业 务 约 定 书 到 期 普

昆 明 机 床 瑞 华 已 报 备 前 任 服 务 年 限 较 长 毕 马 威 华 振 已 报 备 未 与 客 户 未 就 2015 年 审 计 收 费 达 成 一 致 意 见 中 国 核 电 天 健 已 报 备 定

光 一 科 技 重 大 事 项, 特 停 茂 业 商 业 重 要 事 项 未 公 告, 连 续 停 牌 浙 富 控 股 重 大 事 项, 特 停 键 桥 通 讯 重 大 事 项, 特 停 黑 牛 食 品 重 大 事 项, 特 停

Microsoft Word - A doc

國 史 館 館 刊 第 23 期 Chiang Ching-kuo s Educational Innovation in Southern Jiangxi and Its Effects ( ) Abstract Wen-yuan Chu * Chiang Ching-kuo wa

untitled

untitled

20

政治哲學要跨出去!

Revit Revit Revit BIM BIM 7-9 3D 1 BIM BIM 6 Revit 0 4D 1 2 Revit Revit 2. 1 Revit Revit Revit Revit 2 2 Autodesk Revit Aut

國立中山大學學位論文典藏.PDF

1 C++ 2 Bjarne Stroustrup C++ (system programming) 6 (infrastructure) C++ 7 Herb Sutter 8 C++ (efficiency) (flexibility) 9 (abstraction) (productivity

a a a 1. 4 Izumi et al Izumi & Bigelow b

1.2 资 金 的 管 理 1.1 权 利 义 务 来 源 MOU 1.3 数 据 的 使 用 和 保 护 2 国 际 空 间 站 资 源 分 配 方 案 54

國際會計準則IFRS接軌 對稅賦影響之探討與分析

(Microsoft PowerPoint - UML\302\262\244\266_use case.ppt)

PowerPoint 簡報

学校代号 学 号

2004 2

untitled

...1 What?...2 Why?...3 How? ( ) IEEE / 23

Microsoft Word - A _ doc

目 录 一 重 要 提 示... 3 二 公 司 主 要 财 务 数 据 和 股 东 变 化... 3 三 重 要 事 项... 5 四 附 录 / 17

,,.,, : 1),,,,, 2),,,,, 3),,,,,,,,,, [6].,,, ( ),, [9], : 1), 2),,,,, 3),,, 2.,, [10].,,,,,,,,, [11]. 2.1,, [12],, ;, ; Fig. 1 1 Granular hier

240 生 异 性 相 吸 的 异 性 效 应 [6] 虽 然, 心 理 学 基 础 研 [7-8] 究 已 经 证 实 存 在 异 性 相 吸 异 性 相 吸 是 否 存 在 于 名 字 认 知 识 别 尚 无 报 道 本 实 验 选 取 不 同 性 别 的 名 字 作 为 刺 激 材 料, 通

Probabilities of Default RMI PDs CVI 7-8 KMV 9 KMV KMV KMV 1. KMV KMV DPT DD DD DD DPT Step 1 V E = V A N d 1 - e rt DN d 2 1 d 1 = ln V A

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

N1010A FlexDCA 软 件 获 取 安 装 N1010A FlexDCA 是 安 捷 伦 采 样 示 波 器 新 的 GUI 应 用 软 件, 在 86100D 主 机 内 已 经 预 先 安 装 此 软 件 我 们 有 2 个 免 费 版 本 的 软 件 可 以 通 过 下 面 连 接

A B A B S + V + Pt or Complement + Num-MP + O a b SVO c 2 9 * 10 * X Y

Strings

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Abstract Today, the structures of domestic bus industry have been changed greatly. Many manufacturers enter into the field because of its lower thresh

Microsoft PowerPoint - Performance Analysis of Video Streaming over LTE using.pptx

目 錄 頁 數 校 訓.. 第 1 頁 辦 學 使 命.. 第 1 頁 抱 負.. 第 1 頁 學 校 願 景.. 第 2 頁 我 們 的 現 況.. 第 3 頁 學 校 關 注 事 項 ( 年 度 )... 第 4 頁 三 年 周 期 發 展 計 劃 ( 年 度

(Microsoft Word - \244\272\256e\245\376\263\241\267J\276\ doc)

11期(copy)

C/C++语言 - 运算符、表达式和语句

学校代号 学 号

綠色產業、生活風格與健康論述:有機食品消費之社會文化分析


Microsoft Word - 1- 封面

Transcription:

Model Checking a Lazy Concurrent List-Based Set Algorithm ZHANG Shaojie, LIU Yang National University of Singapore

Agenda Introduction Background Ourapproach Overview Linearizabilitydefinition Modelinglanguage Linearizabilityasrefinementrelation Experiment Conclusion&FutureWork

Introduction Concurrentobjectsarenotoriouslyhardtodesign correctly. Esp.Lock-free&wait-freeones. Linearizabilityisanacceptedcorrectnesscriterionis an accepted correctness criterion forsharedobjects. Asharedobjectislinearizableifeachoperationon Asharedobjectislinearizable if each operation on theobjectcanbeunderstoodasoccurring instantaneouslyatsomepoint,(a.k.a.linearization point) Formalverificationorproofoflinearizabilityrely ontheknowledgeoflinearizationpoints Expertknowledge Linearizationpointsarehardtobestaticallydetermined

Introduction Verifylinearizaibilityagainstlazyconcurrentlistbasedsetalgorithm ProposedbySteveHeller,MauriceHerlihy,VictorLuchangco, MarkMoir,WilliamN,SchererIII,andNirShavitin2005. Moir and Nir Shavit in MartinVechev,EranYahav,andGretaYorshdescribeda variationwithweakervalidationconditionin2009. Whychoosethisalgorithm? Highlyconcurrent,non-fixedlinearizationpoints. Complexity:non-deterministictargetlocation Manipulatesdynamicallocatedmemoryheavily& Needagarbagecollector

Agenda Introduction Background OurApproach Overview Linearizabilitydefinition Modelinglanguage Linearizabilityasrefinementrelation Experiment Conclusion&FutureWork

Concurrent List-based Set Setinterface Unorderedcollectionofitems Noduplicates Methods bool add(int x):putxinset;ifsucceeds,returntrue boolremove(int x)takexoutofset )t t t bool contains(intx)testsifxinset

Concurrent List-based Set Setasasingle-linkedsortedlist Listnode public class Node { public int key; // item of interest public Node next; // Reference to next node public bool marked; //Indicate this node is about to be removed }

Concurrent List-based Set Thesentinelnodescanonlybecompared,not modified. - 1 3 4 + Sorted by the key (min & max possible keys)

Concurrent List-based Set Optimisticlockingscheme TraversewithoutLocking 1 2 4 e Add(3) 3 TheFourthIEEEInternational ConferenceonSecureSoftware

Concurrent List-based Set Optimisticlockingscheme Lockthetargetnodeanditspredecessor 1 2 4 5 3 Add(3)

Concurrent List-based Set Optimisticlockingscheme Validation i Node2isnotmarkedtrue Node4stillsuccessortoNode2 t N d 1 2 4 e 3 Add(3)

Concurrent List-based Set Optimisticlockingscheme scheme Validation 1 2 4 e Add(3) 3 TheFourthIEEEInternational ConferenceonSecureSoftware

Concurrent List-based Set Remove 1 2 3

Concurrent List-based Set Remove 1 2 3 Remove(2) 1 not marked 1 still points to 2

Concurrent List-based Set Remove 1 2 3 What if directly free node 2? physical Logical delete

Agenda Introduction Background OurApproach Overview Linearizabilitydefinition Modelinglanguage Linearizabilityasrefinementrelation ExperimentalResult Conclusion& FutureWork

Overview of Our Approach Thedefinitionoflinearizabilityiscasttotrace refinementrelation. Fullyautomatically Withouttheknowledgeoflinearizationpoints Modelinglanguage:CSP#(Communicating sequentialprograms) Event-based;LTS-basedsemantics Tool:PAT(ProcessAnalysisToolkit) Atoolkitforautomaticallyanalyzingevent-based concurrentsystemsincludingrefinementchecking

Overview of Our Approach Dynamicmemoryallocation Pre-allocateaboundedarrayasaprivatememory space Garbagecollection Referencecountingalgorithm

Linearizability Manifesto Eachoperationcould takeeffect instantaneouslybetweeninvocationand response Correlateeveryconcurrentexecutionwitha consistent sequentialatomicexecutionofthe operations. Preservereal-timeorder Respectthesequentialspecificationoftheobject th ti ifi ti f th t

Linearizability Example Observation Sequentialpermutation enqueue(1).inv enqueue(1).res dequeue().inv dequeue().res.2 enqueue(2).inv enqueue(2).res dequeue().inv dequeue().res.1 enqueue(1) enqueue(2) dequeue() -> 1 dequeue() -> 2 Timeline

Modeling language CSP# CommunicatingSequentialProcesseswithshared variables,low-levelprogrammingconstructsand userdefineddatastructures. d d t t Grammar

Linearizability as Refinement Relations Theorem SupposeLsp isalinearizablespecificationlts modelforasharedobjectο,considerlim that implementsobjectο,thentracesoflim ο then of are linearizableifflim refineslsp. 1 st -Step: Definethelinearizablespecificationmodel Specifyeachoperationopofasharedobjectoeach of a object o onaprocessp i usingthreeatomicsteps: theinvocationactioninv(op), i thelinearizationactionlin(op),(invisibleevent) i theresponseactionres(op,resp) i. TheFourthIEEEInternationalConferenceonSecureSoftwareIntegrationandReliability Improvement

Linearizability as refinement relations

Linearizability as Refinement Relations 2 nd -Step: Considertheimplementationofobjecto. implementation of object o Thevisibleeventsofimplarealsothoseinv(op) i 'sandres(op,resp) andres(op, resp) i 's. Memorymanagementoperationsare encapsulatedasmethodsintheinnerlibraryof PAT.

Linearizability as Refinement Relations Memoryallocation var<entrylist>l=newentrylist(m,min,max); ReferenceCountingGarbageCollector Alwayskeepthenumberofreferencestoeachlistnode Collectorrunswhenthereferenceofsomelistnodebecomes zero public class Node { public int key; public Node next; public bool marked; public int reference; //the number of variables pointing to this node } TheFourthIEEEInternationalConferenceonSecure SoftwareIntegrationandReliabilityImprovement

Linearizability as Refinement Relations ReferenceCountingGarbageCollector Wheneverapointervariabletoalistnodeismodified, updatethereference Predecessor = Current Assign(Predecessor, Current) {... IncreaseReference(Current) DecreaseReference(Predecessor) } Don tconsiderthenodesofwhichreferenceiszeroduring th d hi h f i d i thechecking

Agenda Introduction Background OurApproach Overview Linearizabilitydefinition Modelinglanguage Linearizabilityasrefinementrelation Experiment Conclusion&FutureWork

Experimental result Testbed isaserverwith2.813ghzintelxeon64-bit CPUand32GBmemory. Themaximum numberof insertedkeys Thenumber ofprocesses Thenumberof operationseach processperformsperforms meansinfeasible. meansunboundednumber. ThismodelisbuiltinsidePAT,http://pat.comp.nus.edu.sg TheFourthIEEEInternational ConferenceonSecureSoftware

Optimization Functiondetailsaboutdynamicmemory allocationandreference-countinggarbage collectionarehidedintheembeddedlibraryof PAT. Nointermediatestatesduringthefunctionexecution aregenerated. Manuallycombinesequencesoflocalactions intooneatomicblockone

Agenda Introduction Background OurApproach Overview Linearizabilitydefinition Modelinglanguage Linearizabilityasrefinementrelation Experiment Conclusion&FutureWork

Conclusion Verifylinearizabilityusingtracerefinement relation Showthatrefinementcheckingalgorithmbehind PATallowsverifyinglinearizabilityagainst linearizability against concurrentobjects Withouttheknowledgeoflinearizationpointsthe of linearization Fullyautomatically ShowthatPATprovidesafairlyconvenientand efficientwaytodefinenewdatatypesand complexfunctionsinaprogramminglanguage Leavesthemodelclean l Avoidaugmentingbecauseoftheruntime environment

On-going and future work Dealwithinfamousstateexplosionproblem Symmetryreduction(inprogress) Partialorderreduction Combinevariousstatespacereductiontechniques andparameterizedrefinementcheckingforinfinite numberofprocesses

The End Thankyou! Q&A