CN103366386A - 基于多进程和多线程的并行图像解压缩系统 - Google Patents

基于多进程和多线程的并行图像解压缩系统 Download PDF

Info

Publication number
CN103366386A
CN103366386A CN2013102965480A CN201310296548A CN103366386A CN 103366386 A CN103366386 A CN 103366386A CN 2013102965480 A CN2013102965480 A CN 2013102965480A CN 201310296548 A CN201310296548 A CN 201310296548A CN 103366386 A CN103366386 A CN 103366386A
Authority
CN
China
Prior art keywords
image
decompression
thread
uncompressing
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013102965480A
Other languages
English (en)
Inventor
吴宪云
李云松
饶子仁
雷杰
郭杰
王柯俨
张静
刘凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN2013102965480A priority Critical patent/CN103366386A/zh
Publication of CN103366386A publication Critical patent/CN103366386A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明公开了一种基于多进程和多线程的并行图像解压缩系统,用于解决现有技术中多进程间共享资源竞争的问题。该系统包括图像前端处理、数据共享内存、通信共享内存、图像解压缩和图像后端处理模块。图像前端处理模块,创建解压缩进程和解压缩线程,准备压缩码流,启动空闲解压缩线程;数据共享内存模块,为每个解压缩线程分配独立的压缩码流区和恢复图像区;通信共享内存模块为所有解压缩线程分配标识区域,用于线程间通信;图像解压缩模块,用于完成独立地解压缩过程;图像后端处理模块取出恢复图像;本发明具有图像解压缩速度高,数据吞吐率大,可靠性高的优点,可用于深空通信中对空间图像的解压缩。

Description

基于多进程和多线程的并行图像解压缩系统
技术领域
本发明属于图像处理技术领域,涉及图像解压缩,特别是一种涉及多进程和多线程的并行图像解压缩系统,可用于深空通信中对空间图像的解压缩。
背景技术
随着空间图像数据业务的快速发展,地面图像解压缩技术面临着任务量快速增加的难题。为了解决这个难题,需要一种高效的并行图像解压缩系统,高可靠性高速高吞吐率地完成大量图像解压缩任务,其中经常涉及多进程和多线程的并行处理方式。
完成大量图像解压缩任务可以有多进程和多线程以及复合多进程与多线三种方式。无论使用何种方式,进程和线程都不是越多越好,两种方式都存在一个临界点,超过这个临界点,都会因为频繁的进程或线程状态切换而造成程序性能下降。使用多进程方式在到达临界点之后再增加进程就会引起性能的下降,而且下降速度比单进程多线程方式到达临界点之后的下降速度快,这是因为进程切换比线程切换更费时。
大任务量的并行图像解压缩系统中,经常会遇到进程间需要通信的问题。常见的多进程间通信方法有:共享内存方式、匿名管道、命名管道和发送消息等几种方法来直接完成,另外还可以通过Sockets口、配置文件、注册表等来间接实现进程间数据通讯任务。以上这几种方法各有优缺点,具体到进程间进行大数据量的快速交换问题上,上述方法中共享内存方法对于多个进程间通信支持最好,而且具有比较好的安全性和可靠性。
共享内存是一种自由的进程通讯机制,所有的进程都可以访问共享内存,当多个进程同时访问同一个共享内存时,由于没有限制机制,存在共享内存资源的竞争;同时操作同一个共享内存时,可能出现数据错误,导致图像解压缩异常。例如两个进程同时写数据,或者一个进程写完数据,另外一个进程还没有读完数据,其他进程又开始写数据,导致读写冲突,使得读写数据错误。
发明内容
本发明的目的在于针对上述已有技术的不足,提供一种基于多进程和多线程的并行图像解压缩系统,以减少共享内存资源的竞争和冲突。
为实现上述目的,本发明包括:
图像前端处理模块,用于创建解压缩进程和解压缩线程,创建共享内存,为空闲解压缩线程准备压缩码流,以触发解压缩线程进行解压缩,并为数据共享内存模块提供初始化;
图像解压缩模块,用于完成一次独立的解压缩,输入压缩码流,输出恢复图像给数据共享内存模块;
数据共享内存模块,为每个解压缩线程分配了独立的压缩码流区和恢复图像区,用于预先存储每个解压缩线程的待解压缩码流,并存储每个解压缩线程的恢复图像,给图像解压缩模块传输码流数据,同时存储图像解压缩模块输出的恢复图像;
图像后端处理模块,用于从数据共享内存模块中取出恢复图像;
通信共享内存模块,用于存储每个解压缩进程和解压缩线程的标识位,根据标识位,获知图像前端处理模块中的解压缩线程状态,并进行相应的操作;根据标识位判断图像后端处理模块是否进行读取恢复图像。
上述基于多进程和多线程的并行图像解压缩系统,其特征在于图像前端处理模块,包括:
解压缩进程子模块:根据图像解压缩任务量、不同进程数目对吞吐率的增益值创建多进程;
解压缩线程子模块:根据图像解压缩任务量、不同线程数目对吞吐率的增益值创建多线程;
共享内存子模块:共享内存子模块用于创建共享内存,为空闲解压缩线程准备压缩码流。
上述基于多进程和多线程的并行图像解压缩系统,其特征在于数据共享内存模块,包括:
线程分配空间子模块:用于为每个解压缩线程分配独立数据空间,并根据自己的线程号独立寻址,避免解压缩线程之间的数据冲突,去除解压缩线程的数据依赖性;
压缩码流存储子模块:用于存储每个解压缩线程的压缩码流;
恢复图像存储子模块:用于存储每个解压缩线程的恢复图像。
上述基于多进程和多线程的并行图像解压缩系统,其特征在于通信共享内存模块,包括:
解压缩进程标识子模块:用于为所有解压缩进程分配独立的标识位区域;
解压缩线程标识子模块:用于为所有解压缩线程分配标识位区域,并根据线程号寻址到每个线程的标识位区域,获取解压缩线程的所有状态;
线程恢复图像区标识子模块:用于判断解压缩线程的恢复图像区是否有解压缩数据。
本系统由于在并行图像解压缩时,通过图像前端处理模块动态调整进程与线程数量,因而能获取吞吐率上的最大增益;同时由于本发明采用数据共享内存模块为每个独立解压缩线程分配独立的数据空间,避免了数据资源的冲突,去除了数据的依赖性;此外由于本发明采用通信共享内存模块的共享内存标识位实现进程线程间的通信和调整,提高了通信效率,尽可能地减少了共享内存资源的竞争和冲突。
附图说明
图1是本发明的结构框图;
图2是本发明中图像前端处理模块的结构框图;
图3是本发明中数据共享内存模块的结构框图;
图4是本发明中通信共享内存模块的结构框图。
具体实施方式
参照图1,本发明提出的基于多进程和多线程的并行图像解压缩系统包括:图像前端处理模块、数据共享内存模块、通信共享内存模块、图像解压缩模块和图像后端处理模块。其中:
图像前端处理模块,采用数组数据结构存储已知的进程增益和线程增益,根据用户输入的任务量,确定需要的总解压缩线程数目,总线程数目=进程数*线程数;选择能获得最佳增益的进程数和线程数,创建解压缩进程和解压缩线程;该模块循环检测通信共享内存模块,获知解压缩线程空闲时,会给数据共享内存模块的解压缩线程的数据空间放入压缩码流;
数据共享内存模块,为每个解压缩线程分配独立数据空间A1,A2,B1和B2,其中A1和A2存储解压缩线程的压缩码流,为压缩码流区,B1和B2存储解压缩线程的恢复图像,为恢复图像区;该模块将码流数据传输给图像解压缩模块进行解压缩,同时,将解压缩后的恢复图像数据传输给图像后端处理模块进行相关处理;
图像解压缩模块,采用Spiht算法完成一次独立的解压缩,输入压缩码流,输出恢复图像到数据共享内存模块,该模块不依赖于其他线程产生的数据;
通信共享内存模块,为所有解压缩进程和解压缩线程分配独立的标识位区域,以表示解压缩线程的所有状态;该通信共享内存模块分别与前、后端的图像处理模块进行通信,即通信共享内存模块将解压缩线程是否空闲的信息传输给图像前端处理模块,同时将线程的状态标识信息传输给图像后端处理模块;
图像后端处理模块,循环检测通信共享内存模块的相应标识位,判断在数据共享内存模块的恢复图像区域是否有恢复图像,如果有,则提取恢复图像,重置通信共享内存模块的相应标识位,否则,一直等待,直到恢复图像区有恢复图像。
参照图2,所述的图像前端处理模块,包括:
解压缩进程子模块,用于动态调整解压缩进程数量,其调整量的依据是任务量的大小和不同进程数目对吞吐率的增益值,从而选择能获得最佳增益的进程数;
解压缩线程子模块,根据图像解压缩任务量和不同线程数目对吞吐率的增益值,创建多线程,即用数组存储已知线程增益,根据用户输入的任务量,确定需要的总线程数目,选择可以获得最佳增益的线程数;
共享内存子模块,在windows系统下使用CreateProcess函数创建解压缩进程和使用CreateThread函数创建解压缩线程;该子模块循环检测通信共享内存模块,当获知解压缩线程空闲时,会给数据共享内存模块的解压缩线程的数据空间放入压缩码流。
参照图3,所述的数据共享内存模块,包括:
线程分配空间子模块,用于为每个解压缩线程分配独立的数据空间A1,A2,B1和B2,其中A1和A2为压缩码流区,用于存储解压缩线程的压缩码流;B1和B2为图像恢复区,用于存储解压缩线程的恢复图像;根据线程号独立寻址,避免解压缩线程之间的数据冲突,去除解压缩线程的数据依赖性;
压缩码流存储子模块,用于使得每个解压缩线程的数据区A1和A2存放着要解压缩的码流。其存储压缩码流时,先启动线程的开始解压缩事件,当解压缩线程等到该事件时,对A1里的码流进行解压缩,并在线程解压缩的同时给数据区A2放入压缩码流;当下一次检测到该线程空闲时,则直接触发线程对A2里的码流解压缩;同时再在数据区A1中放入解压缩码流,如此交替对A1和A2的码流进行解压缩,即所谓的乒乓操作,从而完成压缩码流的存储;
恢复图像存储子模块,用于当图像解压缩完成后,将恢复图像存储到恢复图像区;如果恢复图像区B1为空,就把恢复图像放入B1,否则,检测恢复图像区B2是否为空,如果是空,就把恢复图像放入B2,如果B1和B2都为满,则循环检测,直至恢复图像区B1和恢复图像区B2有一个为空。
参照图4,所述的通信共享内存模块,包括:
解压缩进程标识子模块,用于为所有解压缩进程分配独立的标识位区域,以表征解压缩进程的状态,如果解压缩进程已处于异常态,则重新启动该进程;
解压缩线程标识子模块,用于为所有解压缩线程分配独立的标识位区域,以表征解压缩线程空闲态,忙碌态,异常态这三种状态,其中,空闲态表示可触发该线程开始解压缩,忙碌态表示该线程正在解压缩,异常态则表示该线程已经异常;如果解压缩线程已处于异常态,则要重新启动该线程,避免一直等待该线程结束而引发异常;
线程恢复图像区标识子模块,用于为所有解压缩线程的恢复图像区分配恢复图像区标识位,即恢复图像区B1和B2的活动标识位,以判断解压缩线程的恢复图像区是否有解压缩图像。
本发明的工作原理如下:
首先,由图像前端处理模块中的解压缩进程子模块和解压缩线程子模块根据存储已知的进程增益和线程增益以及用户输入的任务量,选择可以获得最佳增益的进程数和线程数,确定需要的总解压缩线程数目,即总线程数目=进程数*线程数,例如,一个任务判断需要32个线程,可以把它划分为4个进程数与8个线程数相乘,或2个进程数与16个线程数相乘,根据已知的增益计算,得到4个进程数与8个线程数相乘的方案的总增益更大,因此选择4个进程数与8个线程数相乘的方案,并创建解压缩进程和线程;
然后,将创建的解压缩进程和线程传输给系统中数据共享内存模块,由该模块中的线程分配空间子模块创建数据共享内存,存放所有解压缩线程的解压缩数据,每个线程有四块数据区A1,A2,B1和B2,其中A1和A2为压缩码流区,用于存储解压缩线程的压缩码流;B1和B2为图像恢复区,用于存储解压缩线程的恢复图像,且A1,A2,B1和B2的大小是固定的;该共享内存对所有解压缩线程都是可见的,每个解压缩线程根据自己所属的进程号和线程号检索到自己的数据区进行操作;压缩码流存储子模块中每个解压缩线程有两个数据区A1和A2存放该线程要解压缩的码流,启动线程的开始解压缩事件,当解压缩线程等到该事件时,对A1里的码流进行解压缩,并在线程解压缩的同时给数据区A2放入压缩码流,当下一次检测到该线程空闲时,则直接触发线程对A2里的码流解压缩,同时在数据区A1中放入解压缩码流,如此交替对A1和A2的码流进行存放;
当压缩码流区已存放好码流,则触发图像解压缩模块进行一次独立的解压缩过程。在解压缩完成之后,解压缩线程判断恢复图像区标识子模块的恢复数据区B1和B2的活动标识,如果B1的活动标识是0,就把恢复图像放入B1,否则,检测B2的活动标识,如果是0,把恢复图像放入B2,如果B1和B2的活动标识都为1,循环检测,直至B1和B2的活动标识有一个为0;在解压缩的图像存放到恢复图像区之后,将恢复图像区标识置为忙碌,再将恢复图像区的数据传输给图像后端处理模块进行处理。
最后,图像后端处理模块依次检测通信共享内存的所有解压缩线程恢复图像区B1和B2活动标识,如果某个线程数据恢复区B1或B2的活动标识为1,就从恢复图像区取出恢复图像,将其活动标识置0,如此循环。
以上仅是本发明的一个具体事例,不构成对本发明的任何限制。显然,对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理的情况下,进行形式和细节上的各种修正和改变,可以做出不局限于图像前端模块的进程和线程分配方式、数据共享内存的使用模式、用于线程通信的共享内存标志位的定义和图像解压缩模块解压缩算法的并行图像解压缩系统。但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。

Claims (4)

1.一种多进程和多线程的并行图像解压缩系统,包括:
图像前端处理模块,用于创建解压缩进程和解压缩线程,创建共享内存,为空闲解压缩线程准备压缩码流,以触发解压缩线程进行解压缩,并为数据共享内存模块提供初始化;
图像解压缩模块,用于完成一次独立的解压缩,输入压缩码流,输出恢复图像给数据共享内存模块;
数据共享内存模块,用于预先存储每个解压缩线程的待解压缩码流,存储每个解压缩线程的恢复图像,给图像解压缩模块传输码流数据,同时存储图像解压缩模块输出的恢复图像;
图像后端处理模块,用于从数据共享内存模块中取出恢复图像;
通信共享内存模块,用于存储每个解压缩进程和解压缩线程的标识位,根据标识位,获知图像前端处理模块中的解压缩线程状态,并进行相应的操作;根据标识位判断图像后端处理模块是否进行读取恢复图像。
2.根据权利要求1所述的基于多进程和多线程的并行图像解压缩系统,其特征在于图像前端处理模块,包括:
解压缩进程子模块:根据图像解压缩任务量、不同进程数目对吞吐率的增益值创建多进程;
解压缩线程子模块:根据图像解压缩任务量、不同线程数目对吞吐率的增益值创建多线程;
共享内存子模块:共享内存子模块用于创建共享内存,为空闲解压缩线程准备压缩码流。
3.根据权利要求1所述的基于多进程和多线程的并行图像解压缩系统,其特征在于数据共享内存模块,包括:
线程分配空间子模块:用于为每个解压缩线程分配独立数据空间,并根据自己的线程号独立寻址,避免解压缩线程之间的数据冲突,去除解压缩线程的数据依赖性;
压缩码流存储子模块:用于存储每个解压缩线程的压缩码流;
恢复图像存储子模块:用于存储每个解压缩线程的恢复图像。
4.根据权利要求1所述的基于多进程和多线程的并行图像解压缩系统,其特征在于通信共享内存模块,包括:
解压缩进程标识子模块:用于为所有解压缩进程分配独立的标识位区域;
解压缩线程标识子模块:用于为所有解压缩线程分配标识位区域,并根据线程号寻址到每个线程的标识位区域,获取解压缩线程的所有状态;
线程恢复图像区标识子模块:用于判断解压缩线程的恢复图像区是否有解压缩数据。
CN2013102965480A 2013-07-14 2013-07-14 基于多进程和多线程的并行图像解压缩系统 Pending CN103366386A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013102965480A CN103366386A (zh) 2013-07-14 2013-07-14 基于多进程和多线程的并行图像解压缩系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013102965480A CN103366386A (zh) 2013-07-14 2013-07-14 基于多进程和多线程的并行图像解压缩系统

Publications (1)

Publication Number Publication Date
CN103366386A true CN103366386A (zh) 2013-10-23

Family

ID=49367654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013102965480A Pending CN103366386A (zh) 2013-07-14 2013-07-14 基于多进程和多线程的并行图像解压缩系统

Country Status (1)

Country Link
CN (1) CN103366386A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975311A (zh) * 2016-05-09 2016-09-28 腾讯科技(深圳)有限公司 一种应用启动方法及装置
CN106502767A (zh) * 2015-09-08 2017-03-15 大唐移动通信设备有限公司 一种进程管理方法及其装置
CN110276322A (zh) * 2019-06-26 2019-09-24 湖北亿咖通科技有限公司 一种结合车机闲散资源的图像处理方法及装置
CN110324632A (zh) * 2019-05-29 2019-10-11 西安空间无线电技术研究所 一种基于OpenMP多核并行机制的数据处理与验证方法
CN110740222A (zh) * 2019-09-27 2020-01-31 安徽延达智能科技有限公司 一种消防机器人用远距离图传方法
TWI729003B (zh) * 2015-10-16 2021-06-01 美商高通公司 用於在存在衝突時進行高效任務排程的方法、設備及處理器可讀儲存媒體
CN115205952A (zh) * 2022-09-16 2022-10-18 深圳市企鹅网络科技有限公司 一种基于深度学习的线上学习图像采集方法及系统
CN116662039A (zh) * 2023-07-25 2023-08-29 菲特(天津)检测技术有限公司 基于共享内存的工业信息并行检测方法、装置及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101860740A (zh) * 2009-04-07 2010-10-13 索尼公司 编码装置和方法以及解码装置和方法
CN102200927A (zh) * 2003-12-31 2011-09-28 英特尔公司 使用多线程架构的视觉和图形数据处理
CN102763136A (zh) * 2010-02-11 2012-10-31 诺基亚公司 用于提供多线程视频解码的方法和设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102200927A (zh) * 2003-12-31 2011-09-28 英特尔公司 使用多线程架构的视觉和图形数据处理
CN101860740A (zh) * 2009-04-07 2010-10-13 索尼公司 编码装置和方法以及解码装置和方法
CN102763136A (zh) * 2010-02-11 2012-10-31 诺基亚公司 用于提供多线程视频解码的方法和设备

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHANGHE SONG,ET AL.: "A GPU-Accelerated Wavelet Decompression System With SPIHT and Reed-Solomon Decoding for Satellite Images", 《IEEE JOURNAL OF SELECTED TOPICS IN APPLIED EARTH OBSERVATIONS AND REMOTE SENSING》 *
王少飞, 王希常: "基于并行技术的图像压缩方法研究", 《福建电脑》 *
范少卓,等: "多线程技术在JEPG2000图像解码中的应用", 《计算机系统应用》 *
雷鸣: "基于JPEG2000的遥感图像解压缩并行算法设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502767A (zh) * 2015-09-08 2017-03-15 大唐移动通信设备有限公司 一种进程管理方法及其装置
TWI729003B (zh) * 2015-10-16 2021-06-01 美商高通公司 用於在存在衝突時進行高效任務排程的方法、設備及處理器可讀儲存媒體
CN105975311A (zh) * 2016-05-09 2016-09-28 腾讯科技(深圳)有限公司 一种应用启动方法及装置
US10871973B2 (en) 2016-05-09 2020-12-22 Tencent Technology (Shenzhen) Company Limited Application activation method and apparatus
CN110324632A (zh) * 2019-05-29 2019-10-11 西安空间无线电技术研究所 一种基于OpenMP多核并行机制的数据处理与验证方法
CN110276322A (zh) * 2019-06-26 2019-09-24 湖北亿咖通科技有限公司 一种结合车机闲散资源的图像处理方法及装置
CN110740222A (zh) * 2019-09-27 2020-01-31 安徽延达智能科技有限公司 一种消防机器人用远距离图传方法
CN115205952A (zh) * 2022-09-16 2022-10-18 深圳市企鹅网络科技有限公司 一种基于深度学习的线上学习图像采集方法及系统
CN116662039A (zh) * 2023-07-25 2023-08-29 菲特(天津)检测技术有限公司 基于共享内存的工业信息并行检测方法、装置及介质
CN116662039B (zh) * 2023-07-25 2024-01-23 菲特(天津)检测技术有限公司 基于共享内存的工业信息并行检测方法、装置及介质

Similar Documents

Publication Publication Date Title
CN103366386A (zh) 基于多进程和多线程的并行图像解压缩系统
US8806498B2 (en) Method and system for resolving dependency among the enqueued works and/or finished works and scheduling the dependency-resolved works
CN105659208B (zh) 处理多个线程的数据处理装置及方法
CN103999051B (zh) 用于着色器核心中着色器资源分配的策略
US9207995B2 (en) Mechanism to speed-up multithreaded execution by register file write port reallocation
US10698729B2 (en) Method for organizing tasks in the nodes of a computer cluster, associated task organizer and cluster
CN102546946B (zh) 移动终端处理任务的方法及装置
CN103218329A (zh) 数字信号处理数据传输
US20170228190A1 (en) Method and system providing file system for an electronic device comprising a composite memory device
US9658861B2 (en) Boot strap processor assignment for a multi-core processing unit
JP2007257257A (ja) マルチタスクシステムにおけるタスク実行環境切替え方法
US20130047004A1 (en) Task scheduling method of a semiconductor device
US20190012096A1 (en) Apparatus and method for enforcing timing requirements for a memory device
JP2008532131A (ja) マイクロプロセッサアーキテクチャ
US8959319B2 (en) Executing first instructions for smaller set of SIMD threads diverging upon conditional branch instruction
EP2759927B1 (en) Apparatus and method for sharing function logic between functional units, and reconfigurable processor thereof
US9761296B2 (en) Smart in-module refresh for DRAM
CN109240815B (zh) 一种共享堆栈的多任务运行方法、装置及设备
CN102436405A (zh) 一种进程上下文保存、篡改检测方法及装置
CN113687909B (zh) 基于微内核的分时vcpu多核调度方法及系统
CN102609306B (zh) 多核处理芯片对视频处理任务的处理方法及其系统
US9372816B2 (en) Advanced programmable interrupt controller identifier (APIC ID) assignment for a multi-core processing unit
CN101908002A (zh) 一种任务路径切换方法及装置
WO2013101093A1 (en) Initialization of multi-core processing system
CN110058674B (zh) 一种基于光电传感器的手势识别方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20131023